获取索引 Azure 搜索失败 'Response for preflight has invalid HTTP status code 403'

Get Index Azure Search Fails 'Response for preflight has invalid HTTP status code 403'

我之前发布了 如何从 Azure 搜索中提取索引模式。

我能够通过使用 Postman GET Index REST API 来提取索引模式,没有任何问题,但是当 运行 我的代码在浏览器中时,我收到错误:

XMLHttpRequest cannot load https://[service name].search.windows.net/indexes/[index name]?api-version=[api-version] Response for preflight has invalid HTTP status code 403

我只是运行控制台中的以下代码:

$.ajax({ url: 'https://[service name].search.windows.net/indexes/[index name]?api-version=[api-version]', type: 'GET', datatype: 'json', headers: {'api-key': [api-key]}})

但是,此代码工作正常(returns 所有数据——唯一的区别是 /docs):

$.ajax({ url: 'https://[service name].search.windows.net/indexes/[index name]/docs?api-version=[api-version]', type: 'GET', datatype: 'json', headers: {'api-key': [api-key]}})

另一个奇怪的事情是 GET 索引请求的请求 headers 没有显示 API 键。

似乎 CORS(在 Azure 搜索中设置为“*”)不喜欢浏览器对 GET 索引的请求?

欢迎任何帮助。

Azure 搜索不支持 CORS 请求中的获取索引等管理级操作。参见