バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

プラグイン > その他 > 4系APIのqueryを受け付けてくれない

その他

新規スレッドを追加する

スレッド表示 | 古いものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
ohga
投稿日時: 2022/3/28 11:10
対応状況: 解決済
新米
登録日: 2021/8/6
居住地:
投稿: 6
4系APIのqueryを受け付けてくれない
▼テンプレート
[EC-CUBE]4.1.0
[PHP]7.4.16
[データベース]PostgreSQL9.6.20
[現象]
外部サーバーからEC-CUBEのAPIにアクセスしようとしています。
ドキュメント(https://doc.ec-cube.net/eccube-api4/)を見ながら、アクセストークン・リフレッシュトークンを取得するところまではこぎつけましたが、GraphQLのエンドポイントにアクセスしてQueryを発行しようとすると、401エラーが発生し進めません。

PHPで取得するプログラムを書いており、該当の部分は以下の通りです。
$access_token:取得したアクセストークンを入れています。
query:適当に商品を取得するクエリーです。
CURLOPT_USERPWD:環境がテスト用でBasic認証をかけているため、設定しています。


$header = array("Content-Type: application/json", "Authorization: Bearer {$access_token}");
$content = '{ "query":"{product(id:xxxx){id,name}}" }';

$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => ECCUBE_API_URL,
CURLOPT_HTTPHEADER => $header,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => $content,
CURLOPT_USERPWD => USER . ':' . PASSWORD
));
$response = curl_exec($curl);
curl_close($curl);


$responseを出力すると、
Unauthorized
This server could not verify that you are authorized to access the document requested. Either you supplied the wrong credentials (e.g., bad password), or your browser doesn't understand how to supply the credentials required.
となっており、色々とcurlの設定を組み替えてみたり試しましたが、上手くいかず。。。

お分かりの方がいらっしゃいましたら、教えていただければ幸いです。

よろしくお願いいたします!


2022/4/8 追記
色々試しましたが、GraphQLのクエリー部分を詰めたらいけたようです。
$array = array( ' ', ' ', "\r\n", "\r", "\n", "\t" );
str_replace( $array, '', $content);
スレッド表示 | 古いものから 前のトピック | 次のトピック | トップ


 



ログイン



統計情報

総メンバー数は74,772名です
総投稿数は104,229件です

投稿数ランキング

1
seasoft
7333
2
468
3217
3
AMUAMU
2712
4
nanasess
2202
5
umebius
2085
6
yuh
1664
7
red
1524
8
h_tanaka
1189
9
tsuji
942
10
fukap
907
11
shutta
835
12
tao_s
794
13 ramrun 789
14 karin 689
15 sumida 641
16
homan
633
17 DELIGHT 572
18
patapata
502
19
flealog
485
20 tonton 437


ネットショップの壺

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

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