0

Salesforce で Shopify に http リクエストを送信する必要があります。setEndpoint メソッドのエンドポイント URL として、次の URL 形式を使用しました。

HttpRequest req= new HttpRequest(); 
req.setEndpoint('https://apikey:password@hostname/admin/resource.xml'); 
req.setMethod('GET'); 

次のログを取得します。

CALLOUT_RESPONSE|[18]|System.HttpResponse[Status=Unauthorized, StatusCode=401]

そして、HttpResponse の本体から戻り値を取得します。

<?xml version="1.0" encoding="UTF-8"?> <hash> <errors>[API] Invalid API key or access token (unrecognized login or wrong password)</errors> </hash>

また、構造に従おうとしましたが、成功していません。

Blob headerValue = Blob.valueOf(apikey+ ':' + password);
String authorizationHeader = 'BASIC ' +
EncodingUtil.base64Encode(headerValue);
req.setHeader('Authorization', authorizationHeader);

HttpResponse ステータス コードが 200 になるにはどうすればよいですか。

4

1 に答える 1

0

「基本」という単語は、大文字と小文字が区別されます。それに伴い「BASIC」を変更しました。問題は修正されました。

Blob headerValue = Blob.valueOf('apikey:password');
    String authorizationHeader = 'Basic ' + EncodingUtil.base64Encode(headerValue);
    req.setHeader('Authorization', authorizationHeader);
于 2013-03-26T13:51:08.510 に答える