js ajax初次跨域请求

最近有个页面,要请求第三方的一个api,

postman里测试返回结果正常,状态正常

可在php js前端请求,返回错误,取不到任何有用信息,status = 0.

没接触过跨域,一直以为第三方接口问题,

后来知道还有跨域这一说法,就是http请求其他主机地址,浏览器是不允许的,会返回错误

解决:

在后端页面用php转发前端的请求,并加入跨域的标志

复制代码
public function send_RegisterPost() {
	  $url = 'http://www.baidu.com/text2audio';

	  $json =  $this->input->post('json');


	  $postdata = http_build_query($json);
	  $options = array(
		'http' => array(
		  'method' => 'POST',
		  'header' => 'Content-type:application/json',
		  'content' => $json,
		  'timeout' => 15 * 60 // 超时时间(单位:s)
		)
	  );
	  $context = stream_context_create($options);
	  $result = file_get_contents($url, false, $context);
	  $this->output->set_header("Access-Control-Allow-Origin: * ");
	  $data['dbData'] = $result;
	  out::code(10000,$data,"获取成功");
	  
	}

虽然前端ajax 还是在 error中,但status =200 statusText 是我需要的内容

相关推荐
子榆.5 分钟前
CANN ATC编译器:模型从Python到达芬奇指令走了多远
开发语言·python·neo4j
Dontla16 分钟前
Multi-Agent多智能体项目如何从MVP过渡到生产项目?
开发语言
兰令水23 分钟前
topcode【随机算法题】【2026.5.20打卡-java版本】
java·开发语言·算法
我还记得那天28 分钟前
C语言递归实现汉诺塔问题
c语言·开发语言
不吃土豆的马铃薯30 分钟前
Spdlog 入门:日志记录器与日志槽基础详解
服务器·开发语言·c++·c·日志·spdlog
凯瑟琳.奥古斯特38 分钟前
传输层核心功能解析
开发语言·网络·职场和发展
Fuyo_11191 小时前
C++中的活字印刷术——模板·初阶
开发语言·c++·笔记
在角落发呆1 小时前
跨越网络鸿沟:传统文件传输与现代内网穿透的奇妙交响
开发语言·php
Season4501 小时前
C++之模板元编程(前置知识 constexpr)
开发语言·c++
坚定信念,勇往无前1 小时前
electron-vite 安装better-sqlite3
javascript·数据库·electron