我正在尝试使用open-graph-scraper和Vue.js抓取OG数据,但由于Chrome中的CORB而被阻止。我使用Node运行的脚本可以正常工作,但是是否可以解决此问题,还是可以从输入URL中获取OG数据呢?

Cross-Origin Read Blocking (CORB) blocked cross-origin response SOME-INPUT-URL with MIME type text/html. See https://www.chromestatus.com/feature/5629709824032768 for more details.

最佳答案

CORB是基于该思想的标准
“我要的是我收到的”

如果您要解决Chrome中的CORB错误,则意味着您的请求方法没有内容类型或与您的请求方法不符的内容类型被响应。

在第三方API中,我建议使用邮递员(未关联)之类的工具来检查响应标头中的传入内容类型。一旦知道了调用的内容类型标头,就可以调整请求方法以匹配预期的输出。许多API使用的框架实施得不好,仅因为响应格式正确的JSON并不意味着标头会说JSON。我经常看到标头为“ text / plain”的json输出。

如果这不起作用,例如某些api根本无法响应内容标头
-另一种方法是使用中间调用来发出请求。例如,结合使用AWS API网关和AWS Lambda函数,您可以创建一条路由,该路由将使用node发出请求,但随后您将在其中获得对响应标头和主体的完全控制。然后,您可以添加所需的内容标头,并将其传递回客户端。

参考:
https://www.chromium.org/Home/chromium-security/corb-for-developers

10-02 15:31