14 messaggi dal 09 febbraio 2012
Salve, sto provando ad utilizzare le classi AspNet.Identity.Owin per la gestione account.
Durante la creazione di un account genero il token di conferma email come riportato qui sotto:

Dim code = manager.GenerateEmailConfirmationToken(user.Id)
Dim callbackUrl = IdentityHelper.GetUserConfirmationRedirectUrl(code, user.Id, Request)
manager.SendEmailAsync(user.Id, "Conferma account", "Per confermare l'account, fare clic <a href='" & callbackUrl & "'>qui</a>.")

Il problema è che nella mail di conferma, quando clicco sull'url di callback, ricevo l'errore "A potentially dangerous Request.QueryString value was detected....
Come posso ovviare a questo problema? Ho provato a mettere validateRequest="false", ma non ottengo nulla.
Grazie 1000
Modificato da ephone il 18 dicembre 2023 07:14 -
383 messaggi dal 23 aprile 2007
Ciao,
prova ad usare HttpUtility.UrlEncode(callbackUrl) al posto del semplice callbackUrl nel body dell'email.
14 messaggi dal 09 febbraio 2012
Grazie, ma non funziona. Con l'UrlEncode il link sulla mail non è cliccabile. Non riesco a venirne a capo, se avete altri suggerimenti sono graditi. Grazie
Modificato da ephone il 18 dicembre 2023 07:40 -
383 messaggi dal 23 aprile 2007
prova a encodare singolarmente i parametri in query, qualcosa tipo:
var callbackUrl = Request.Url.GetLeftPart(UriPartial.Path).Replace(Request.Url.AbsolutePath, "/Account/ConfirmEmail/?userId=") +  Url.Encode(user.Id) + "&code=" + Url.Encode(code);
14 messaggi dal 09 febbraio 2012
Grazie. Il problema è l'apice nell'href e avevo risolto inserendo requestPathInvalidCharacters="'" nel web.config
Ad ogni modo anche il tuo suggerimento funziona (ho solo sostituito il tuo Url.Encode con HttpUtility.UrlEncode).
Unica cosa che non comprendo è perchè tutta la lunga stringa dell'href viene visualizzata nel corpo della mail come testo pieno. Eppure il corpo della mail è impostato su html (IsBodyHtml = true). Suggerimenti?
Grazie ancora
Modificato da ephone il 18 dicembre 2023 20:01 -
Modificato da ephone il 18 dicembre 2023 20:33 -
383 messaggi dal 23 aprile 2007
puoi postare il body generato per intero? così su due piedi non saprei darti spiegazioni, e non è detto che ci riesca vedendo il body
Modificato da historyX il 19 dicembre 2023 06:57 -
14 messaggi dal 09 febbraio 2012
Ho risolto, grazie. In pratica ho utilizzato l'overload del metodo Await client.SendMailAsync(mailmessage), dove mailmessage era formattato con body html=true.
Grazie 1000

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.