【发布时间】:2013-04-03 14:11:12
【问题描述】:
我需要登录网站,我可以通过 url.com/ssorequest?parameters=123 等 URL 来完成。如果这是在我登录的地址中输入并被重定向到门户网站。
现在我应该通过 http post 请求以编程方式执行此操作,但我无法让它工作,我被重定向到登录表单而不是门户,即我没有登录。
我使用 Fiddler 来找出这两种方法之间的区别。我发现一些幕后的 get-request 是不同的。浏览器的 get-requests 将 cookie 数据发送到服务器,而 fiddler 的 post-request 则不会。
当我使用 fiddler 重复浏览器第一次调用时,它也不会发送 cookie 数据。所以它只有在我通过浏览器窗口执行时才有效。除非我在 fiddler 中使用断点并篡改包含 cookie 数据的请求。
问:为什么它在使用 http post 和从 Fiddler 完成请求时的行为与浏览器不同?
问:有没有办法在我的 C# 应用程序中以编程方式篡改发出的请求,而无需编写我自己的 Fiddler 应用程序?
【问题讨论】:
标签: c# httpwebrequest http-post