REST-API for Androidを使用して Magentoから製品をリクエストしようとしています
Scribeを使用して認証を作成しました。これは Android 向けではないことを読んだので、さらに検索してsignpostを見つけました。
ここに私のコードがあります
private void requestOAuth(String url)
{
OkHttpOAuthConsumer consumer = new OkHttpOAuthConsumer(MAGENTO_API_KEY, MAGENTO_API_SECRET);
consumer.setTokenWithSecret(getAccessToken().getToken(), getAccessToken().getSecret());
OkHttpClient client = new OkHttpClient.Builder()
.addInterceptor(new SigningInterceptor(consumer))
.build();
final Request request = new Request.Builder()
.url(url).build();
try
{
Request signedRequest = (Request) consumer.sign(request).unwrap();
Call call = client.newCall(signedRequest);
Logger.i(TAG, ">>>> oAuth URL = " + url);
Response response = call.execute();
String responseString = response.body().string();
Logger.i(TAG, "oAuth = " + response.code() + " oAuth Request ___ response = " + responseString);
}
catch (OAuthMessageSignerException | OAuthExpectationFailedException | OAuthCommunicationException | IOException e)
{
Logger.e(e);
}
}
「サービスが一時的に利用できません」とコード 500 が常に表示されます。
ゲストを有効にしてテストしたところ、ヘッダー " " > " "を送信する必要があることがわかりました。そうしないと、ゲストとして機能しません。accept
application/json
認証でリクエストしながら試してみましたが、「ユーザーロールが利用できません」のような応答がありました。
私はロールを作成し、許可を与えるなど、Magento で一部の作業を行いました。(したがって、認証が完了し、トークンとトークンを秘密にしました)。
なぜそれが機能しないのか、誰かが提案できますか? 私は何日も探していて、今はたくさんのことを試していますが、何もうまくいきません...
送信しなければならないヘッダーはありますか?