【问题标题】:Face API face CORS error. Someone solve it pls [duplicate]人脸 API 人脸 CORS 错误。请有人解决它[重复]
【发布时间】:2019-06-10 08:27:37
【问题描述】:

我对使用 API 和这里还是很陌生。

我正面临 CORS 问题。

错误如下。

Access to XMLHttpRequest at 'https://api-us.faceplusplus.com/facepp/v3/detect?api_key={0}&api_secret={1}&image_url={2}&return_attributes={3}' 
from origin 'http://localhost:3111' has been blocked by CORS policy:
Response to preflight request doesn't pass access control check: 
No 'Access-Control-Allow-Origin' header is present on the requested resource
;

这是我的代码

        async submit(){
          let imgSrc = document.getElementById("photo").src        
          const self = this
          try{
            let headers = {headers:{"Access-Control-Allow-Origin":"*",}}
            console.log(headers)
            let response = await self.$axios.$post(CONSTANTS.API_URL,self.createParam(imgSrc),headers)
            console.log(response)
          }catch(error){
            console.log(error)
          }
        },

我可以在 Google Chrome 上的 Restlet Client 上检查此 API 是否正常工作。

this is screen shot on Restlet Client

帮帮我。

【问题讨论】:

    标签: google-chrome vue.js cors


    【解决方案1】:

    Access-Control-Allow-Origin 设置在服务器上,而不是在客户端上。

    您是从 localhost 发送请求,API 是否接受来自 localhost 的调用?

    有关 CORS 的更多信息:https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS

    【讨论】:

    • 阿拉德先生感谢您的评论。是的,我从 localhost 发送请求
    【解决方案2】:

    标头Access-Control-Allow-Origin 既不是ajax 请求中的也不是ajax 响应中的那个。该错误告诉您该脚本正在尝试从不受信任的来源下载资源。

    此处的来源是下载脚本的来源。所以标题Access-Control-Allow-Origin 需要由您的后端设置,为您提供包含提交的脚本。

    【讨论】:

    • Mr.mathk 谢谢解答。我不知道服务器允许从 localhost 访问。我去看看。
    猜你喜欢
    • 2018-06-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-05
    • 2019-05-23
    • 2018-01-06
    • 2018-05-01
    • 2023-03-19
    • 2019-12-31
    相关资源
    最近更新 更多