バージョン選択

フォーラム

メニュー

オンライン状況

58 人のユーザが現在オンラインです。 (46 人のユーザが フォーラム を参照しています。)
登録ユーザ: 1
ゲスト: 57
nyzaarr もっと...

サイト内検索

プラグイン > 開発について > EC-CUBE API アクセストークンが取得できない

開発について

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
nkk
投稿日時: 2018/3/23 11:02
対応状況: 解決済
半人前
登録日: 2018/3/23
居住地:
投稿: 11
EC-CUBE API アクセストークンが取得できない
[EC-CUBE] 3.0.15、新規インストール
[レンタルサーバ] VPS
[OS] Ubuntu16.04LTS
[PHP] 7.0
[データベース] MySQL 5.7
[WEBサーバ] Apache2.4
[ブラウザ] Chrome
[導入プラグインの有無] クローズサイト、ソニーペイメントサービス
[カスタマイズの有無] 無し
[現象]

GoogleScriptでAPI認証手続きに基づき、管理者ログイン~code取得までできました。

取得したcodeからaccess_tokenを取得したいのですが、401エラーが発生しhtmlテキスト(ユーザーログイン画面)が返ってきます。

実行しているコードは下記の通りです。

var options = {
grant_type: "authorization_code",
code: code,
client_id: client_id,
client_secret: client_secret,
state: state,
nonce: nonce,
redirect_uri: redirect_uri
};

var prams = {
method : 'post',
payload : options,
muteHttpExceptions : true,
};

var response = UrlFetchApp.fetch(url, params);

認証ガイドの2. アクセストークンの取得では特にユーザーログイン画面が表示されるような記述はなく、参考にしたスレッドではcode取得後はCURLで可能とありますので、腑に落ちません。

同じような状況でお悩みの方はいらっしゃらないでしょうか。。。

それともUrlFetchApp.fetch()ではできないものでしょうか


--
追記

curlでも同様でした。
nanasess
投稿日時: 2018/3/23 15:10
対応状況: −−−
登録日: 2006/9/9
居住地:
投稿: 2303
Re: EC-CUBE API アクセストークンが取得できない
以下の authorization code の有効期限が切れていたりしませんでしょうか?
http://doc.ec-cube.net/api_authorization#1-authorization-code-の取得


nkk
投稿日時: 2018/3/23 15:21
対応状況: −−−
半人前
登録日: 2018/3/23
居住地:
投稿: 11
Re: EC-CUBE API アクセストークンが取得できない
返信ありがとうございます。

確かに現状は動作確認のためcode取得からtoken発行まで少々時間がかかっております。
それでも5秒はたっていないと思いますが。。。

codeが有効な時間はmsecオーダーなんでしょうか。


未記載の情報として
・ホストはhttpsでアクセス
・3.0.15のためhtml/.htaccessの401対策は適用済み
nanasess
投稿日時: 2018/3/23 15:33
対応状況: −−−
登録日: 2006/9/9
居住地:
投稿: 2303
Re: EC-CUBE API アクセストークンが取得できない
あー、認可する scope が渡ってない感じですかね??
nkk
投稿日時: 2018/3/23 16:15
対応状況: −−−
半人前
登録日: 2018/3/23
居住地:
投稿: 11
Re: EC-CUBE API アクセストークンが取得できない
引用:

nanasessさんは書きました:
あー、認可する scope が渡ってない感じですかね??

確認させてください。

1. https://<eccube-host>/admin/OAuth2/v0/authorize?~ を叩く
2. ログインする
3. scopeを確認し 認証する
4. redirect_uriにcodeが返ってくる

という手順を踏んでいますがscopeは渡っていないのでしょうか?
nanasess
投稿日時: 2018/3/23 17:49
対応状況: −−−
登録日: 2006/9/9
居住地:
投稿: 2303
Re: EC-CUBE API アクセストークンが取得できない
ごめんなさい。見当違いなところを見ていました。

token エンドポイントの URL は、どのような URL を指定していますでしょうか?
authorization エンドポイントと異なり、 /admin 無しの URL が正しいです。

https://<eccube-host>/OAuth2/v1/token

ログイン画面が表示されてしまうということで、 管理画面の URL を指定していませんでしょうか?
nkk
投稿日時: 2018/3/23 21:52
対応状況: −−−
半人前
登録日: 2018/3/23
居住地:
投稿: 11
Re: EC-CUBE API アクセストークンが取得できない
元々は
https://<host>/admin/OAuth2/v0/authorize
https://<host>/OAuth2/v0/token

にアクセスしていましたが、返信を拝見してからconstant.ymlを編集しv1に切り替えてみました。

変更後はこちらですね。
https://<host>/admin/OAuth2/v1/authorize
https://<host>/OAuth2/v1/token

https://<host>/OAuth2/v1/tokenから帰ってくるのは変わらず401のままです。。。


swaggerも動作しないので、サイトそのものに問題があるのかな
nanasess
投稿日時: 2018/3/24 12:45
対応状況: −−−
登録日: 2006/9/9
居住地:
投稿: 2303
Re: EC-CUBE API アクセストークンが取得できない
通常、管理画面のログイン画面が表示されるのは、 /admin 以下(インストール時に設定したディレクトリ)のみなので、 /OAuth/v1/token でログイン画面が表示されるのは、おかしい気がします。

https://<host>/index.php/OAuth2/v1/token

に、してみるといかがでしょう??
nkk
投稿日時: 2018/3/24 19:33
対応状況: −−−
半人前
登録日: 2018/3/23
居住地:
投稿: 11
Re: EC-CUBE API アクセストークンが取得できない
https://<host>/index.php/OAuth2/v1/token」としてみましたが、状況は変わらないです。

ヘッダは下記の内容が返ってきますが、ヒントになりますでしょうか。
(クッキー情報は書き換えています)

Transfer-Encoding=chunked, keep-alive=timeout=5, max=100, Server=Apache, Cache-Control=no-cache, Access-Control-Allow-Origin=*, Access-Control-Allow-Methods=GET,POST,PUT,DELETE,OPTIONS, Connection=Keep-Alive, Set-Cookie=xxxxxxxxxxxxxx; path=/; secure; HttpOnly, Date=Sat, 24 Mar 2018 10:28:48 GMT, Access-Control-Allow-Headers=Origin, X-Requested-With, Content-Type, Accept, Authorization, Content-Type=text/html; charset=UTF-8}


(401の結果だと思いますが)ログイン画面というのは、管理者のログイン画面ではなく会員ログイン画面になります。
nkk
投稿日時: 2018/3/26 11:14
対応状況: −−−
半人前
登録日: 2018/3/23
居住地:
投稿: 11
Re: EC-CUBE API アクセストークンが取得できない
「会員限定サイトプラグイン for EC-CUBE3」の有効/無効で結果が異なることがわかりました。

今回の原因はこちらのプラグインですね。

URL解析を追加してログイン要求をパスさせる修正が必要になりそうです。


取り急ぎご連絡まで。
(1) 2 »
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は88,288名です
総投稿数は109,688件です

投稿数ランキング

1
seasoft
7365
2
468
3217
3
AMUAMU
2712
4
nanasess
2303
5
umebius
2085
6
yuh
1818
7
h_tanaka
1610
8
red
1567
9
mcontact
1240
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
796
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.