Sto effettuando una chiamata ajax utilizzando jQuery a una pagina ASP.NET che funge da pagina del server ajax a salvare i dati che sto inviando ad esso nella stringa di query. Nella pagina ASP.NET quando sto cercando di leggere la querystring sto ottenendo questo errore:Un valore Request.QueryString potenzialmente pericoloso è stato rilevato dal client durante l'invio di markup html da jquery post call alla pagina asp.net
A potentially dangerous Request.QueryString value was detected from the client...
Ho impostato il ValidateRequest="false"
nella mia pagina. Non voglio impostarlo per tutte le pagine. Così ha fatto in livello di pagina invece che a livello di configurazione:
var content = "<h3>Sample header</h3><p>sample para</p>"
content = encodeURIComponent(content);
var url = "../Lib/ajaxhandler.aspx?mode=savecontent&page=home<xt=" + content;
$.post(url, function (data) {
//check return value and do something
});
e nella mia pagina asp.net:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="ajaxhandler.aspx.cs" ValidateRequest="false" Inherits="MyProject.Lib.ajaxhandler" %>
Ma quando mando testo normale al posto del codice HTML, funziona benissimo.
Sei tu completamente sicuri che hai messo ValidateRequest = "false" sulla giusta pagina? –
Oh Sì. Ho ricontrollato. – Shyju
Possibile duplicato di [ValidateRequest = "false" non funziona in Asp.Net 4] (http://stackoverflow.com/questions/2673850/validaterequest-false-doesnt-work-in-asp-net-4) – nothingisnecessary