如何从本地主机向API进行提取请求?

时间:2019-07-10 23:56:03

标签: api http request

我正在制作条形码扫描仪应用程序。当我发出获取请求时,本地主机被附加到api URL的前面,并带回404。如何解决此问题,使其在发出获取请求时仅包含我要获取的api URL?

$ date; python3 play_house_of_cards.py ; date
Wed 10 Jul 2019 04:54:16 PM PDT
would have run `start BTS_House_Of_Cards.mp3`
Wed 10 Jul 2019 04:55:00 PM PDT
$

我在控制台中收到此错误: GET http://127.0.0.1:3000/api.upcitemdb.com/prod/trial/lookup 404(未找到)

1 个答案:

答案 0 :(得分:0)

这是因为url中缺少协议信息。为了使其正常工作,变量url应该为http://api.upcitemdb.com/...https://api.upcitemdb.com/...(取决于api.upcitemdb.com服务器支持的协议)。

Fetch Standard中,Request的构造函数定义为:

  

Request(input,init)构造函数必须运行以下步骤:

     

...

     
      
  1. 如果输入是字符串,则:

         
        
    1. 让parsedURL成为使用baseURL解析输入的结果。
    2.   
  2.   
     

...

也就是说,如果缺少http://https://,它将把当前服务器作为“ baseURL”(http://127.0.0.1:3000/),并将api.upcitemdb.com作为URL路径的一部分(而不是主机名)。