通过js(ajax)请求另外一个域名的接口时会产生跨域问题解决办法

本文涉及的产品
.cn 域名,1个 12个月
简介: 通过js(ajax)请求另外一个域名的接口时会产生跨域问题解决办法

如果接口是php语言:


<?phpheader("Access-Control-Allow-Origin: *");  

$name = isset($_POST['name'])? $_POST['name'] : '';

$gender = isset($_POST['gender'])? $_POST['gender'] : '';

$filename = time().substr($_FILES['photo']['name'], strrpos($_FILES['photo']['name'],'.'));

$response = array();

if(move_uploaded_file($_FILES['photo']['tmp_name'], $filename)){undefined

   $response['isSuccess'] = true;

   $response['name'] = $name;

   $response['gender'] = $gender;

   $response['photo'] = $filename;

}else{undefined

   $response['isSuccess'] = false;

}

echo json_encode($response);


如果是框架比如thinkphp可以直接加在入口文件index.php


header("Access-Control-Allow-Origin: *");  


如果接口不能修改,客户端也可以解决当然就是不是通过js提交给接口了,思路是先让js提交给自己的方法 ,然后通过自己的方法调取另外一个域名的接口(js请求会跨域,php程序请求不会跨域的,需要注意的是js跨域可以把信息提交给接口但是无法获取接口的返回值)


相关文章
|
11天前
|
JSON JavaScript 前端开发
js跨域实现
【10月更文挑战第31天】在实际开发中,需要根据具体的需求和项目情况选择合适的跨域解决方案。
14 1
|
1月前
|
JavaScript
Node.js GET/POST请求
10月更文挑战第6天
34 2
Node.js GET/POST请求
|
18天前
|
JavaScript 前端开发 索引
JavaScript获取url网址中域名后面的部分
如何截取 url 中网站域名之后的部分,需要用到以下几个方法:
66 3
|
1月前
|
缓存 JavaScript CDN
一次js请求一般情况下有哪些地方会有缓存处理?
一次js请求一般情况下有哪些地方会有缓存处理?
37 4
|
2月前
|
缓存 JavaScript 中间件
优化Express.js应用程序性能:缓存策略、请求压缩和路由匹配
在开发Express.js应用时,采用合理的缓存策略、请求压缩及优化路由匹配可大幅提升性能。本文介绍如何利用`express.static`实现缓存、`compression`中间件压缩响应数据,并通过精确匹配、模块化路由及参数化路由提高路由处理效率,从而打造高效应用。
149 10
|
2月前
|
JSON JavaScript 前端开发
js请求后端9
js请求后端9
34 2
|
3月前
|
网络协议 安全 前端开发
【应用服务 App Service】Azure 应用服务测试网络访问其他域名及请求超时限制(4分钟 ≈ 230秒)
【应用服务 App Service】Azure 应用服务测试网络访问其他域名及请求超时限制(4分钟 ≈ 230秒)
|
3月前
|
JavaScript
Vue项目打包后都产生了哪些JS请求?
【8月更文挑战第19天】Vue项目打包后都产生了哪些JS请求?
114 0
Vue项目打包后都产生了哪些JS请求?
|
3月前
|
JavaScript Serverless Linux
函数计算产品使用问题之遇到Node.js环境下的请求日志没有正常输出时,该如何排查
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
3月前
|
缓存 JavaScript CDN
一次js请求一般情况下有哪些地方会有缓存处理?
一次js请求一般情况下有哪些地方会有缓存处理?
113 0