如何调用中等RSS源

Kse*_*nia 4 javascript rss frontend localhost cors

Medium有一个RSS源,可通过https://medium.com/feed/[@username]获得.我正在尝试使用XMLHTTPRequest获取所有博文.当我在本地测试时,我遇到了CORs错误.当我打开CORs Chrome扩展程序时,出现401错误.有任何想法吗?有没有人成功调用Medium RSS?

sid*_*ker 8

https://medium.com/feed/[@username]使用XHR 获取内容,您可以通过某种代理发出XHR请求.例如,尝试将此网址提供给您当前的XHR代码:

https://cors-anywhere.herokuapp.com/https://medium.com/feed/@sideshowbarker
Run Code Online (Sandbox Code Playgroud)

这将导致请求转到https://cors-anywhere.herokuapp.com一个开放/公共CORS代理,然后发送请求https://medium.com/feed/@sideshowbarker.

当该代理获得响应时,它会接受并向其添加Access-Control-Allow-Origin响应头,然后将其作为响应传递回请求的前端代码.

Access-Control-Allow-Origin响应头的响应是浏览器看到的,因此浏览器显示的错误消息现在消失了,浏览器允许您的前端JavaScript代码访问响应.

或者使用https://github.com/Rob--W/cors-anywhere/中的代码来设置您自己的代理.

您需要代理的原因是,响应来自https://medium.com/feed/[@username]不包含Access-Control-Allow-Origin响应标头,因此您的浏览器将拒绝让您的前端JavaScript代码访问那些跨源的响应.

https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS有更多详细信息.