我正在尝试建立一个WISPr客户端。为此,我已经阅读了WISPr 1.0,1.2和2.0规范。
考虑到1.0 WISPr客户端,我从热点登录页面解析了LoginURL
,并尝试发出身份验证请求(login = test,password = pass):
POST : http://hotspot.server.com/login
Parameters : button=Login&UserName=test&Password=pass&FNAME=0&OriginatingServer=http://www.google.com
我的凭据很好,因为我通过网页的HTML表单使用它们。
使用http POST请求时,身份验证始终失败并显示响应:
<AuthenticationReply>
<MessageType>120</MessageType>
<ResponseCode>100</ResponseCode>
<ReplyMessage>Authentication Failure</ReplyMessage>
</AuthenticationReply>
我尝试过使用其他良好凭证的其他网络的不同热点。
您是否了解我的身份验证请求中出现错误的位置?
答案 0 :(得分:3)
您可以尝试使用GET。这对我有用
答案 1 :(得分:1)
我过去做过一些WISPr客户端工具,这看起来很奇怪,至少从提供的数据来看。我建议的最佳方法是使用Wireshark通过浏览器捕获登录会话的流量,并将其与代码处理的会话进行比较。如果浏览器还使用POST检查丢失的标题,格式错误的数据等。如果实际上浏览器确实使用GET,那么您应该尝试按照建议坚持这种情况。也许热点只支持一种方法,例如通知投票。尽管如此,如果没有Wireshark的细节,很难猜到。另请记住,WISPr 1.0和WISPr 2.0之间存在一定的差异,并且您没有说明您登录的热点版本是什么。