POST 请求之你见
先来看段代码
- Java code
public static function LocateGoogleMapApi(OperType:String,lac:int,cellid:int):void { //Alert.show(OperType+" 解析基站"); var postInfo:String = "{\"version\": \"1.1.0\",\"host\": \"maps.google.com\",\"access_token\": " + "\"2:k7j3G6LaL6u_lafw:4iXOeOpTh1glSXe\",\"radio_type\": \"gsm\",\"carrier\": \"Vodafone\",\"request_address\": " + "false,\"address_language\": \"zh_CN\",\"cell_towers\": [{\"cell_id\": "+cellid+",\"location_area_code\": "+lac+",\"age\": " + "0,\"signal_strength\": -60,\"timing_advance\": 5555}]}"; var urlReq:URLRequest = new URLRequest("http://www.google.com/loc/json"); urlReq.method = URLRequestMethod.POST; urlReq.data = postInfo; [color=#FF0000]BaseStatloader = new URLLoader();[/color] BaseStatloader.addEventListener(Event.COMPLETE, function(event:Event):void{BaseStatloader_complete(event,OperType)}); BaseStatloader.load(urlReq); }
这是我写的一段基站解析的代码,想目标服务器(http://www.google.com/loc/json)发一个POST请求,传送我组织好的参数信息,请求成功后调用BaseStatloader_complete方法处理解析到的结果,
这个功能在本地测试是没问题的,但是上传到服务器上就会引发一个异常
text=Error #2048: 安全沙箱冲突:http://192.168.1.116:100/GoogleMapPro.swf 不能从 http://www.google.com/loc/json 加载数据
指出的出错代码就是红色部分
请高手们指教,谢谢了
[解决办法]
楼主的标题不错!!!O(∩_∩)O~~
这个似乎没什么好的办法!
Adobe在安全性方面做的很严谨!
楼主试想下,如果你的机子是服务器你会允许任何人发送请求不经你同意就操作你电脑上的数据吗??
同样的道理!跨域就必须得到对方的同意,才能访问数据!
当然你用黑客手段另当别论~~~~
[解决办法]
其实问题也容易解决,就是在这两者中间设置一个中转站,也就是你自己的服务器
[解决办法]
绕不开安全验证的