2017-08-20 22 views
0

私はAPIベースのWebサイトへの認証を取得するコードを書いています。ログイン処理中にサイトに必要なAPIキーがあります。 APIキーを使用してloginメソッドを呼び出すと、事前定義されたURLにリダイレクトされ、パラメータにリクエストトークンが格納されます。最終的なリダイレクトURLを取得

私は

https://impacted-purposes.000webhostapp.com/?status=success&request_token=nb0vrfota9ott1r02q153pk3422joruf にリダイレクトしていますブラウザにURLを発射に例えば、 https://kite.trade/connect/login?api_key=hcwmefsivttbchla

(リクエストトークンが実行ごとに変更されます)

お知らせURLでリクエストトークンリダイレクトされたURLにそれが私がコードから得る必要があるものです。 Getting the Redirected URL from the Original URL

すなわち:

だから、私はここGetFinalRedirect呼ばれるコードを使用します。私は、

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

と呼びますが、最終的なリダイレクトはありません。 Javascriptのリダイレクトがある可能性があることを理解していますが、レスポンスを確認することはできません。

最終的なURLを取得して、リクエストトークンを解析できるようにするためのヘルプです。

答えて

0

私はアカウントを持っていないので、これはテストできません。そして、私はあなたの本当のAPIキーではないことを願っています...

しかし、使用している機能は単にサーバーにHEAD要求を送信しているだけです。 HEAD要求には応答がありません。 HEADリクエストでは、HTTPヘッダーに含まれるリダイレクトのみが取得されます。リダイレクトがHTML-METAタグまたはjavascriptで行われた場合、GET(またはPOST)リクエストを送信する必要があります。

これも失敗した場合は、関数内にブレークポイントを設定し、受信したhttp-headersと応答テキスト...

+0

ありがとうございました。はい、現実のAPIキーであり、現在の問題の範囲外の他のキー(特に秘密キー)を期待する第2段階の認証があるので、ここに投稿するのが安全です。これで確認できます。ヘッダーを以前にGETに変更し、実際のページを取得し、メタタグとJSリダイレクトをチェックしていましたが、何も見つかりませんでした。どんな助けでも本当に感謝しています。 – Kallol

+0

@Kallol申し訳ありませんが、私はこれをチェックする方法がありません。あなたが投稿した最初のリンク(kite.trade)を開くと、ログインフォームが表示され、ログインするためのアカウントがなく、リダイレクトがどのように動作するかチェックします。 – Michael

+0

@Kallol '.AllowAutoRedirect'を' false '? https://msdn.microsoft.com/de-de/library/system.net.httpwebrequest.allowautoredirect(v=vs.110).aspx – Michael

関連する問題