Запретить отправку Viewstate в виде строки запроса на сайте asp.net

У меня есть сайт dot.net, и большие поисковые системы, похоже, хотят попробовать проиндексировать www.example.com/page.aspx?__VIEWSTATE=lotsofrandomstuffздесь

Теперь я подумал, что могу просто при загрузке страницы или инициализации проверить Request.Querystring для __VIEWSTATE или VIEWSTATE и просто перенаправить, но это, похоже, не работает.

Есть идеи, как поймать эту ошибку?

Я пробовал это безуспешно

Protected Sub Page_PreInit(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.PreInit
If Request.QueryString("VIEWSTATE").Length > 0 Then
Response.Redirect("woli.aspx")
End If 
End Sub

Пробовал загружать страницу и использовал __VIEWSTATE


person depicus    schedule 02.12.2011    source источник


Ответы (1)


Пожалуйста, проверьте свой метод отправки формы, если это GET, затем измените на POST

<form method="get">

превратиться в

<form method="post">
person Govind Malviya    schedule 02.12.2011
comment
Ага - см. stackoverflow.com/questions/1309610/ - person dash; 02.12.2011
comment
Переход на POST решает начальную проблему, но, как всегда, вызывает несколько новых :) Спасибо - person depicus; 02.12.2011