2017-11-15 7 views
0

thisチュートリアルに基づいて、以下のコードを試しました。 Webページに新しいスクリプトを追加しようとしています。新しいスクリプトタグを作成する(Shopify)エラー:無効なURI "/"

request.post(accessTokenRequestUrl, { 
     json: accessTokenPayload 
    }) 
    .then((accessTokenResponse) => { 
      const accessToken = accessTokenResponse.access_token; 
      // DONE: Use access token to make API call to 'shop' endpoint 
      const shopRequestUrl = 'https://' + shop + '/admin/shop.json'; 
      const shopRequestHeaders = { 
       'X-Shopify-Access-Token': accessToken, 
       'Content-Type': 'application/json' 
      }; 


      const createScriptTagUrl = 'https://' + shop + '/admin/script_tags.json'; 
      const scriptTagBody = { 
       "script_tag": { 
        "event": "onload", 
        "src": "https:\/\/djavaskripped.org\/fancy.js" 
       } 
      } 

      request.get(shopRequestUrl, { 
        headers: shopRequestHeaders 
       }) 
       .then((shopResponse) => { 
        res.status(200).end(shopResponse); 
       }) 
       .catch((error) => { 
        res.status(error.statusCode).send(error.error.error_description); 
       }); 
      request.post(createScriptTagUrl, { 
        json: scriptTagBody 
       }, { 
        headers: shopRequestHeaders 
       }) 
       .then((scriptResponse) => { 
        res.status(200).end(scriptResponse); 
       }) 
       .catch((error) => { 
        res.status(error.statusCode).send(error.error.error_description); 
       }); 

しかし、私は

私は何をしないのですRequestError: Error: Invalid URI "/"が得ますか?または、srcの値に問題がありますか?

答えて

0

投稿メソッドの代わりにスクリプトタグを作成するgetメソッドを使用していると思います。 postメソッドを使い、\ srcも削除してください。

ありがとうございました

+0

私は 'request.postと試みた(createScriptTagUrl、{JSON:scriptTagBody}、{ヘッダ:shopRequestHeadersは})'しかし、問題はまだ解決しません。有無 \ –

0

以下のコードを使用して修正しました。基本的に、リクエスト本体はJSONとして送信されるはずです。

request.post({ 
    url: createScriptTagUrl, 
    body: scriptTagBody, 
    headers: shopRequestHeaders, 
    json: true 
}, function(error, response, body) { 
    if (!error) { 
     console.log(body) 
    } 
}); 
関連する問題