angular - Zendesk API + Angular:由于 CORS 无法接收数据
问题描述
我正在使用Zendesk API并且能够发出发布请求(即使响应告诉我有错误),但我无法使用我的 Angular 4 应用程序和HttpClient发出 GET 请求。
searchZendesk( query : string ) {
console.log(query)
this.search( query ).subscribe(
(data) => console.log(data),
(err) => console.log(err.error),
() => console.log("complete")
)
}
search( query : string ) {
let headers = this.setOptions()
let url = `${ this.baseUrl }/search.json?query=${ query }`
return this.http.get(`${ this.baseUrl }/search.json?query=${ query }`, { headers: headers })
}
setOptions() {
let key = this.setKey()
let headers = new HttpHeaders({
'Authorization': key,
})
return headers
}
打电话后searchZendesk()
我收到以下错误:
No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:8100' is therefore not allowed access.
解决方案
您需要将 Zendesk 和 Angular 代码托管在同一个域上以避免 CORS 问题。
你可以完全控制如何部署你的 js 代码(角度应用程序),所以我把它留给你。
要在同一域上托管 zendesk,请按照本文进行操作:
——</p>
此外,按照这篇文章https://develop.zendesk.com/hc/en-us/articles/360001074268-Making-cross-origin-browser-side-API-requests您应该能够从客户端访问大多数 API如果您使用 oAuth 身份验证,则没有 CORS 问题!
推荐阅读
- c - 使用 fscanf 读取 txt 文件(fscanf 逐行读取字符串的问题)
- jhipster - 为什么我会使用 jpaDerivedIdentifier 获得“参照完整性约束违规”
- javascript - 由于某种原因,我的导航栏有滚动条?
- mongodb - Kafka 主题返回 0 条消息
- css - 我的 css 文件太大,因为 url-loader 正在将 .jpg 代码插入到 .css 文件中 - 如何配置 webpack 使其指向 img?
- c# - Tweetinvi 5.0 获取推文回复
- git - 使用 git clone 从 github 下载大型 lfs 文件时出现问题
- java - 如何在 Firestore 中构建关注系统
- c# - 未找到 Xamarin 绑定属性
- javascript - Firestore 功能云消息传递无法正常工作