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 是我需要的内容

相关推荐
Elastic 中国社区官方博客13 小时前
用于 Elasticsearch 的 Gemini CLI 扩展,包含工具和技能
大数据·开发语言·人工智能·elasticsearch·搜索引擎·全文检索
wjs202413 小时前
Bootstrap4 提示框详解
开发语言
biter down13 小时前
C++ 单例模式:饿汉与懒汉模式
开发语言·c++·单例模式
echome88813 小时前
Go 语言并发编程实战:用 Goroutine 和 Channel 构建高性能任务调度器
开发语言·后端·golang
l1t13 小时前
与系统库同名python脚本文件引起的奇怪错误及其解决
开发语言·数据库·python
Jackey_Song_Odd13 小时前
Part 1:Python语言核心 - 内建数据类型
开发语言·python
切糕师学AI14 小时前
编程语言 Erlang 简介
开发语言·erlang
sycmancia14 小时前
C++——C++中的类型识别
开发语言·c++
还是大剑师兰特14 小时前
Vue3 按钮切换示例(启动 / 关闭互斥显示)
开发语言·javascript·vue.js
小金鱼Y14 小时前
从进程线程到 async/await,一文吃透前端异步核心原理
前端·javascript