[TOC]
前言
最近使用 Creator 写游戏,用遇到跨域问题。
一个是使用 XMLHttpRequest,直接获取时提示跨域。
另一个 cc.loader.load 加载外部图片,显示图片的时候。
纠结了很久,最后只能通过服务器转发来实现。
过程
服务器转发
这里实用 php 实现,建立一个 php 文件,加入以下代码:
header("Content-Type: text/html;charset=utf-8");
header("Access-Control-Allow-Origin: *");
$url = $_GET['url'];
echo file_get_contents($url);
?>
这个文件的作用其实就是帮我访问 url,再把数据回给我。
XMLHttpRequest
把我需要 get 的 url,传递到 php 文件里面,让它替我访问
get: function (state, sender)
{
var url = this.httpUrl + state + '?';
url += sender;
var xhr = new XMLHttpRequest();
cc.info(url);
xhr.onreadystatechange = function ()
{
if (xhr.readyState =