编辑 已经有相当的发展。目前的问题是这样的:Delphi - 连接并登录到网页
我比较了从浏览器发送并从我的应用发送的请求。有一些差异,我设法纠正其中的大部分。有些仍然没有确定,因为我还没有弄明白。我正在使用INDY。
我如何发送(或增加)的cookie到请求?
我试过这个:IdHTTP.CookieManager.AddCookie('bakatheme=BrectanTheme',IdHTTP1.URL)
但它不起作用。另外,在INDY的帮助下,他们说它应该是AddCookie(String,String),但是我的Delphi只接受(String,TIdURI) - 我不确定它是否是我正在调用的正确的URI。在标题中我有这样的代码:
AcceptEncoding:='gzip,deflate,sdch';
但是当我解析出去的请求时,它陈述了这一点:AcceptEncoding:gzip,deflate,sdch,identity
但我确定我没有“身份”在代码中的任何地方。
这些是我的请求不同于浏览器的两件事。现在,我收到了500内部服务器错误,可能是由于缺少cookie或第二件事导致的?
非常感谢。
您可以登录到某个站点并维护具有许多组件套件(包括INDY)的呼叫之间的会话。我只是不明白你在这里有什么问题,看起来你不知道网络是如何工作的。如果你不这样做,开始学习HTTP post并获取动词,不同网站如何管理会话,以及不同网站如何管理登录和会话以跟踪用户。学习如何使用嗅探器,并在尝试使用任何编程语言在低级别执行此操作之前查看原始数据在浏览器和首选站点之间的传递方式。 – jachguate 2011-03-10 18:33:45
我已成功登录,请参阅已编辑的帖子。 – 2011-03-12 13:31:12
@Magicmaster当你从任何浏览器登录到网站时,你发现在嗅探器中发布的内容是什么? – jachguate 2011-03-14 17:19:25