当前位置: 首页 > 知识库问答 >
问题:

我一直从Bing的API中得到“404-未找到资源”

余铭晨
2023-03-14

我遵循了微软的指南,但我只是不断得到一个带有错误的JSON(响应如下)。

以下是我根据微软官方指南所做的尝试:https://docs.microsoft.com/en-us/azure/cognitive-services/bing-image-search/quickstarts/nodejs

let https = require('https');
let bingSubscriptionKey = '[SUBSCRIPTIONKEY]'; // tried both keys I received on the Azure portal
let bingHost = 'api.bing.microsoft.com'; // this is the endpoint I was provided with on the Azure portal, I've also tried the endpoint on MS's guide: api.cognitive.microsoft.com
let bingPath = '/bing/v7.0/images/search';
let term='pizza';

let request_params = {
    method : 'GET',
    hostname : bingHost,
    path : bingPath + '?q=' + encodeURIComponent(term),
    headers : {
        'Ocp-Apim-Subscription-Key' : bingSubscriptionKey,
    }
};

let response_handler = function (response) {
    let responseBody = '';

    response.on('data', function (d) {
        responseBody += d;
    });
    
    response.on('end', function () {
        console.log ("responseBody", responseBody); // responseBody always contains a JSON with an error
    });
};

let req = https.request(request_params, response_handler);
req.end();

“api”的结果。宾。微软com的endpoint始终是以下JSON:

{"错误":{"代码":"404","消息":"未找到资源"}}

在他们的文档('api.cognitive.microsoft.com')中找到的endpoint的结果是以下JSON:

{“error”:{“code”:“401”,“message”:“由于订阅密钥无效或API终结点错误,访问被拒绝。请确保为活动订阅提供有效密钥,并为您的资源使用正确的区域API终结点。”}

我还尝试了使用类似代码的必应搜索应用编程接口——但路径不同,我得到了同样的错误。

共有1个答案

苏翰学
2023-03-14

看起来路径不正确。

实际路径:https://api.bing.microsoft.com/v7.0/images/search

使用的路径:https://api.bing.microsoft.com/bing/v7.0/images/search

尝试以下代码:

let bingHost = 'api.bing.microsoft.com'; // this is the endpoint I was provided with on the Azure portal, I've also tried the endpoint on MS's guide: api.cognitive.microsoft.com
let bingPath = '/v7.0/images/search';
let term='pizza';

上述代码的更改:

bingpath已从/bing/v7修改。0... /v7。0/....

参考:https://docs.microsoft.com/en-us/bing/search-apis/bing-image-search/how-to/get-images

 类似资料:
  • 我有一个web api和一个应用程序。所以我想注册一个应用程序,但我有一个问题。我使用azure。这是我的registerapi(接口) 还有我的主要活动。java页面 我没有得到改造404没有找到。

  • 我正在尝试(失败)设置一个简单的FastAPI项目,并使用uvicorn运行它。这是我的代码: 这是我从终端运行的内容: 如你所见,我找不到404。原因可能是什么?一些与网络相关的东西,可能是防火墙/vpn阻止此连接或其他什么?我是新来的。提前谢谢!

  • 我仍然无法使box api hello world程序工作。我得到了这个错误: 然后我去了Apache Commons Lang Home下载并设置了他们的东西。 现在我明白了 我不知道如何满足这种依赖性。我也怀疑,即使我能找到这个,也只会有另一个,另一个,另一个。手动导入它们似乎不是很现实。 我打算如何获取box API缺失的依赖项?

  • 我正在使用Spring Boot gradle插件构建一个可执行的war。我有一个好消息来源。src/main/resources中的java类来定位文件: 当我执行gradle构建时,我得到一个错误,即类FindResource无法解析。我是否需要Spring Boot gradle插件,它还应该使用resources目录中的类。我该怎么做? 我的身材。gradle如下所示:

  • 我正在libs文件夹中使用Android-support-v7-appcompat.jar lib 我的目标是使我的应用程序兼容2.3或以上

  • 在StackOverflow中有很多关于这个错误的问题我都看到了没有一个对我有效。我正在使用react和redux来获取一些产品。我的后端服务器节点运行在端口5000上,每当我尝试获取数据时,我都使用并发来同时启动两台服务器,它使用端口3000,我的前端正在运行。请谁来帮我解决这个问题