access_token取得について

9 個の投稿 / 0 new
最終投稿
#1 2017/9/12 (火) 11:34
ロン

access_token取得について

uidとstateを取得後、access_tokenを取得にいくと
「こちらからログインしてください」の画面情報がレスポンスされて
tokenを取得することができません。
このような場合は設定すべき項目の何が不足しているのか
お教えください。よろしくお願いいたします。

2017/9/13 (水) 17:18

RE:access_token取得について

uidとstateをAPI取得後、アプリを起動したユーザーが未ログイン状態の場合ログイン画面が表示されます。
ログイン後のredirect_uri先のページでtokenを取得する流れになります。
詳細はAPIリファレンスをご覧ください。
https://developer.next-engine.com/api/param/uid_state

2017/9/13 (水) 18:40
ロン

ログインの状態

ご回答ありがとうございます。
uidとstateを取得する際に、ログインしております。
ただ、アプリで自動的にIDとパスワードをセット後
自動的に「ログイン」ボタンを押しています。
このような場合、未ログインとなるのでしょうか

2017/9/15 (金) 14:40

RE:ログインの状態

tokenを取得するには、ネクストエンジンのログイン完了後になります。
取得のための処理の流れは以下の通りになります。
1.uid、stateを取得
2.未ログインの状態の場合、ネクストエンジンログイン画面表示 → 3へ
ログインされている場合はredirect_uri先のページに遷移 → 4へ 
3.ネクストエンジンログイン画面で認証 認証OKの場合 redirect_uri先のページに遷移 → 4へ
4.redirect_uri先のページでaccess_tokenを取得

access_tokenはuid、stateを取得後すぐに行うのではなく、redirect_uri先のgetパラメータでuid、stateを取得後、APIやSDKを利用してaccess_tokenを取得します。

2017/9/16 (土) 18:36 ( #4への返信)
ロン

access_tokenを取得するアプリのサーバ

たびたびの質問で申し訳ありません。

Webサーバがいないクラウド上のアプリから
IEを起動して、ログインし、
別のWEBサーバ(redirect_uri)上のphpで
uidとstatusを取得しています。その後、access_tokenを
取得しに行ってもログイン画面が出てきます。
ログイン画面がでるということは、何がいけないのでしょうか
よろしくお願いいたします。

2017/9/18 (月) 07:56
ロン

access_token取得時のレスポンス

302 Found Cache-Control: no-cache Content-Type: text/html・・・・・・・Location: https://base.next-engine.org/users/sign_in/
のエラーが戻ってきます。どのような原因が考えられますでしょうか?

2017/9/19 (火) 12:13

RE:access_tokenを取得するアプリのサーバ

uid・state取得APIでuid・state取得後アプリを起動したユーザがネクストエンジンにログインされていないとログイン画面が表示されます。
その場合はログイン画面でログイン後、redirect_uriのページでaccess_tokenを取得することができます。
以下の点について確認させてください。
・"Webサーバがいないクラウド上のアプリからIEを起動して、ログインし" というのはとは具体的にはどのようなログインを行なっているのでしょうか?
・ログイン画面が表示された後に表示されたログイン画面でログインした場合はredirect_uriのページでaccess_tokenを取得することは出来ますでしょうか?

2017/9/19 (火) 14:00 ( #7への返信)
ロン

ご回答ありがとうございます。

ご回答ありがとうございます。
>Webサーバがいないクラウド上のアプリからIEを起動して、ログインし
は、当方のWindowsアプリから、IEを起動し、ログイン画面
https://base.next-engine.org/users/sign_in)へナビゲートすると
ネクストエンジン様のログイン画面が表示されます。

この画面にIDとパスワードをセットし、「ログイン」ボタンを押下させると
redirecr_uriで指定した、当方のWEBサーバ(アプリサーバとは別サーバです)に
uidとstateが返却されます。

これを用いてaccess_tokenをWinアプリから取得しに行くのですが
毎回ログイン画面情報が戻ってきます。

access_tokenを取得しにいっているので、画面上にログイン画面が
表示されるのではなく、レスポンスとしてログイン画面情報が戻ってきておりますので、
ここで、ログインすることはできないです。

何かわかることがあればお教えください。

2017/9/20 (水) 11:36

RE:ご回答ありがとうございます。

uidとstateですがstateは有効期限(5分)があり、永続的に使用することは出来ません。
ネクストエンジンログイン後、Winアプリからではなくredirecr_uriで指定したWEBサーバ上でuid・state取得後、直ぐにaccess_tokenを取得するようにしてください。
その後は取得したaccess_tokenを利用してWinアプリ上からAPIを実行する流れになるかと思います。
なお、access_token、refresh_tokenにも有効期限(access_token:1日、refresh_token:3日)があります。
各APIのレスポンス値に最新のaccess_token、refresh_tokenが返却されるので、それを常に保持することにより永続的に使用することが可能となります。