当我向我的api发出请求时,chrome会阻止我的请求,原因是内核。在我的firebase云函数上,我添加了response.set('access-control-allow-origin','*');(axios get中的xxxxxx只是隐藏请求url)
export const getApproximateAddress = functions.https.onRequest(async(request, response)=>{
try{
response.set('Access-Control-Allow-Origin','*');
response.set('Access-Control-Allow-Methods','GET, POST, PATCH, PUT, DELETE, OPTIONS');
let data = JSON.parse(request.body);
let lat = "";
let lng = "";
let hasCoords = false;
if( data.lat !== undefined && data.lng !== undefined){
lat = data.lat;
lng = data.lng;
hasCoords = true;
}
let place = data.place;
let result;
if(hasCoords){
result = await axios.get(`xxxxxxxx`);
console.log("hehe");
}else{
result = await axios.get(`xxxxxxxx`);
}
if(result.status !== 200){
response.status(result.status).send(result.data);
}else{
console.log(result.data.features);
response.status(200).send(result.data.features);
}
}catch(error){
response.status(500).send(error);
}
然后在我的angular应用程序中,我发出一个http post请求,如下所示
searchLoation(query:any):Observable<any>{
const url = 'https:XXXXXXXX/getApproximateAddress';
return this.http.post(url,{place:query},{
observe: 'body'
});
}
url与请求来自的域不同。
当我测试《邮差》里的一切,一切都很好...
您需要在服务器上允许CORS(在云功能API中)。可能是这样的,这取决于您的API内置的内容。CORS总是需要在服务器上设置,报头通常不会有影响。下面是一个Node.js解决方案作为示例。您将需要安装cors库
import * as cors from 'cors'
const app = express()
app.use(
cors({
origin: true,
}),
)
下面是我的Ajax请求: 如果我没有精确的内容类型,我就无法再看到Firebug的请求。相反,当我添加内容类型时,我可以看到POST请求(由于我的URL是false而出现错误),但在我的头中,内容类型默认是URL编码的表单。 我想要的是通过JSON数据发送表单的详细信息。谢谢你的帮助
我正在使用Spring MVC和角7创建一个CRUD应用程序。我在我的Spring应用程序中允许CORS,但是当我从角调用PUT请求时,我得到一个“从源'http://localhost:4200'在'http://localhost:8080/BookAPI/api/updateBook/70'处访问XMLHttpRequest已被CORS策略阻止:对预飞行请求的响应未通过权限改造检查:请求的资
我想通过POST请求(使用ajax)发送一个到我的服务器,但是每次尝试都被CORS阻止了。阅读为什么它被封锁一点帮助都没有。在某个时候,这里的一个评论声称,不允许有contentType的POST请求(对不起,我找不到相关的帖子了)。所以我测试了一些东西。我写了以下文件: 我在端口上运行了它。使用contentType发送POST请求可以正常工作,但是get被CORS阻止。 相关javascrip
问题内容: 我在端口5000的node.js服务器上设置了CORS,如下所示: 我现在正尝试像这样在从硬盘打开的静态网页中使用JQuery发送AJAX POST请求: 该函数从不调用,并且我得到的唯一警报是来自XHR 处理程序的警报,其中包含以下错误: 我认为CORS配置合理, 我缺少什么? 编辑 :对于我而言,我能找到的最佳解决方案是从服务器发送页面: 问题答案: 这是我正在使用的代码。它位于我
我有一个Android、Ios和web应用程序,它使用php作为后端。所有Api在android和ios中都运行良好,但在web中抛出CORS错误。得到这样的错误 访问位于“”的XMLHttpRequesthttps://example.com/api“起源”http://localhost:49168'已被CORS策略阻止:请求的资源上不存在'Access Control Allow Origi