繁体   English   中英

Google Cloud Vision REST API请求错误

[英]Google Cloud Vision REST API Request Error

我想使用Cloud Vision API来检测标签。 使用以下代码通过我的后端文件发出请求。

    import {vision} from 'backend/cloudVision.jsw';

    let url = {
  requests:[
    {
      image:{
        source:{
          imageUri: "https://static.wixstatic.com/media/33aa21_89b30ab70dcb480992ec7b96b316a907~mv2_d_2000_2000_s_2.png"
        }
      },
      features:[
        {
          type:"LABEL_DETECTION",
          maxResults:10
        }
      ]
    }
  ]
};

export function button1_click(event) {
    vision(url)
    .then( (response) => {
        console.log(response);
    });
}

在我的后端文件cloudVision.jsw上,我具有如下所示的POST请求设置

import {fetch} from 'wix-fetch';

export async function vision(url) {

  const apiKey = "API_KEY_HERE"; 

  const response = await fetch("https://vision.googleapis.com/v1/images:annotate?key=" + apiKey, {
    method: 'post',
    headers: {
      "Content-Type": "application/json"
    },
    body: url
  });

  if (response.status >= 200 && response.status < 300) {
    const ret = await response.json();
      return ret;
  }
    let res = await response.json();
    return res;
}

但是,在发出API请求时,我收到400错误“接收到无效的JSON有效负载。意外的令牌。\\ n [对象对象] \\ n ^”。

我相信编码可能有问题,但不确定。

为此使用Corvid。

是的,这是如何编码请求的问题。 我对Corvid不熟悉。 也许尝试将关键字放在引号中,例如:“ requests”而不是请求。 看来Corvid正在添加“ \\ n”,因此请尝试在一行上定义url。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM