Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 需要对_VIEWSTATE _EVENTVALIDATION _EVENTTARGET和_EVENTARGUMENT进行澄清_Php_Asp.net_Curl - Fatal编程技术网

Php 需要对_VIEWSTATE _EVENTVALIDATION _EVENTTARGET和_EVENTARGUMENT进行澄清

Php 需要对_VIEWSTATE _EVENTVALIDATION _EVENTTARGET和_EVENTARGUMENT进行澄清,php,asp.net,curl,Php,Asp.net,Curl,我正试图实现一个成功的ASPX页面的外部网站使用 因为我不太在意页面的外观,它都是在服务器端完成的,所以我不发送任何参数 __VIEWSTATE、\uuuueventvalidation、\uuuueventtarget和\uuuuueventargument都不是空的,但我确实发送了真实的数据 将这些参数发布到ASP.NET服务器有多重要 我不是ASP.NET程序员,但我可能怀疑事件验证可能会给我带来一些困难。或者这是我不需要太在意的浏览器和服务器之间的事情 如果这很关键,我如何模拟这些变量以

我正试图实现一个成功的ASPX页面的外部网站使用

因为我不太在意页面的外观,它都是在服务器端完成的,所以我不发送任何参数 __VIEWSTATE、\uuuueventvalidation、\uuuueventtarget和\uuuuueventargument都不是空的,但我确实发送了真实的数据

将这些参数发布到ASP.NET服务器有多重要

我不是ASP.NET程序员,但我可能怀疑事件验证可能会给我带来一些困难。或者这是我不需要太在意的浏览器和服务器之间的事情


如果这很关键,我如何模拟这些变量以便服务器接受帖子?

一般来说,您不能消除这些值

ViewState和EventValidation非常重要,除非另一方禁用了它们。如果另一方使用它们,但在回发时找不到它们,则会出现抛出错误,这取决于程序如何处理

ViewState包含页面在回发后需要使用的信息

EventValidation包含一个键,用于验证回发控件,以确保您不会尝试触发任何没有权限的命令,或发送任何没有运行权限的参数


让我们给你一个例子:假设我有一个发送数字43的控件和一个触发回发的按钮,我询问id 43的信息。EventValidation会注意到,您不能创建脚本,要求所有id为的数字,并得到您可能认为的任何结果。

通常,您不能消除这些值

ViewState和EventValidation非常重要,除非另一方禁用了它们。如果另一方使用它们,但在回发时找不到它们,则会出现抛出错误,这取决于程序如何处理

ViewState包含页面在回发后需要使用的信息

EventValidation包含一个键,用于验证回发控件,以确保您不会尝试触发任何没有权限的命令,或发送任何没有运行权限的参数


让我们给你一个例子:假设我有一个发送数字43的控件和一个触发回发的按钮,我询问id 43的信息。EventValidation会注意到,您不能编写一个脚本,要求所有id为的数字,并得到您可能认为的任何结果。

这是可能的。只是不能和你在一起

最好的方法是使用浏览器仿真器,如中的mechanize。下面是一个示例脚本。试试看。您始终可以使用命令行调用此脚本,并让它返回结果


这是可能的。只是不能和你在一起

最好的方法是使用浏览器仿真器,如中的mechanize。下面是一个示例脚本。试试看。您始终可以使用命令行调用此脚本,并让它返回结果


你不能向你提交的网站询问这些信息吗?你不能向你提交的网站询问这些信息吗?
import mechanize
import cookielib

# Browser
br = mechanize.Browser()

# Cookie Jar
cj = cookielib.LWPCookieJar()
br.set_cookiejar(cj)

# Browser options
br.set_handle_equiv(True)
br.set_handle_gzip(True)
br.set_handle_redirect(True)
br.set_handle_referer(True)
br.set_handle_robots(False)

# Follows refresh 0, but it does not hang on refresh > 0
br.set_handle_refresh(mechanize._http.HTTPRefreshProcessor(), max_time=1)

# Want debugging messages?
#br.set_debug_http(True)
#br.set_debug_redirects(True)
#br.set_debug_responses(True)

# User-Agent (this is cheating, OK?)
br.addheaders = [('User-agent', 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.1) Gecko/2008071615 Fedora/3.0.1-1.fc9 Firefox/3.0.1')]

# Open some site, let's pick a random one, the first that pops in mind:
r = br.open('http://www.example.com/')
html = r.read()

# Show the source
print html
# or
print br.response().read()

# Show the HTML title
print br.title()

# Show the response headers
print r.info()
# or
print br.response().info()

# Show the available forms
for f in br.forms():
    print f

# Select the first (index zero) form
br.select_form(nr=0)

# Let's search
br.form['field']='value'
br.submit()

# Show HTML of results
print br.response().read()