获取最终的重定向网址

时间:2017-08-20 06:16:11

标签: c# c#-4.0 httpwebrequest httpwebresponse

我正在编写代码以通过基于API的网站进行身份验证。我有登录过程中网站所需的API密钥。当我使用API​​密钥调用login方法时,它应该重定向到预定义的URL,其参数将包含请求令牌。

例如在浏览器中触发URL时, https://kite.trade/connect/login?api_key=hcwmefsivttbchla

我被重定向到

https://impacted-purposes.000webhostapp.com/?status=success&request_token=nb0vrfota9ott1r02q153pk3422joruf (请求令牌将在每次运行中更改)

请注意重定向网址上的URL中的请求令牌。这就是我需要从代码中获得的东西。

所以,我使用这里引用的代码GetFinalRedirectGetting the Redirected URL from the Original URL

即。我打电话给:

GetFinalRedirect("https://kite.trade/connect/login?api_key=hcwmefsivttbchla")

但是,我没有得到最终的重定向。我知道可能有Javascript重定向,但检查响应,并不是这样建议的。

任何帮助都可以获取最终的URL,以便我可以从中解析请求令牌。

1 个答案:

答案 0 :(得分:0)

好吧,我无法测试这个,因为我没有帐户。我希望那不是你真正的关键......

但您正在使用的功能只是向服务器发送HEAD请求。 HEAD请求没有响应。使用HEAD请求,您将只获得HTTP标头中包含的重定向。如果使用HTML-META标签或使用javascript完成重定向,则必须发送GET(或POST)请求...

如果失败也在函数内部设置断点并查看收到的http-headers和响应文本......