起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

楼主: teky

[结贴] wex5 ajax调用问题

  [复制链接]
发表于 2016-1-27 09:37:42 | 显示全部楼层
teky 发表于 2016-1-26 21:34
应该是跨域问题
用ajax方法,没执行到success,但是后台打印出了json数组
参照/UI2/system/lib/base/baas ...

跨越问题就不能单纯的使用ajax了!需要服务器设置支持跨域
请研究下这个文档:
http://wex5.com/cn/ajax-cors-jsonp/
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

66

主题

350

帖子

2145

积分

金牌会员

Rank: 6Rank: 6

积分
2145
 楼主| 发表于 2016-1-27 13:19:03 | 显示全部楼层
liangyongfei 发表于 2016-1-27 09:37
跨越问题就不能单纯的使用ajax了!需要服务器设置支持跨域
请研究下这个文档:
http://wex5.com/cn/ajax- ...

跨域文档中我采用JSONP方案
文中的服务端
String callbackName = request.getParameter(“x5callback”);
返回的内容格式也不再仅是一个JSON数据,而是一个JS的函数调用形式:回调函数名(JSON数据)
String jsonpResult = String.format(“%s(%s)”, callbackName, jsonResult);
baas服务端
return Transform.tableToJson(table);
如果把jsonpResult 转为Json数据呢
回复 支持 反对

使用道具 举报

发表于 2016-1-27 14:13:18 | 显示全部楼层
teky 发表于 2016-1-27 13:19
跨域文档中我采用JSONP方案
文中的服务端
String callbackName = request.getParameter(“x5callback”); ...

我问了一下
baasServer如果要跨域设置BaasServer\WEB-INF\web.xml

     <init-param>
       <param-name>Access-Control-Allow-Origin</param-name>
       <param-value>*</param-value>
     </init-param>


访问的时候可以直接使用平台baas就可以了!
不过调用Baas.sendRequest  以前 先设置一个变量参数
Baas.BASE_URL等于你的服务地址,可以看下代码
/UI2/system/lib/base/baas.js 中有这个变量的定义,你设置的时候也参照这种方式,前边加上http://ip:端口/baas
,访问自己的服务时,一定要把这个变量值再改回来!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

66

主题

350

帖子

2145

积分

金牌会员

Rank: 6Rank: 6

积分
2145
 楼主| 发表于 2016-1-27 15:41:56 | 显示全部楼层
liangyongfei 发表于 2016-1-27 14:13
我问了一下
baasServer如果要跨域设置BaasServer\WEB-INF\web.xml

设置跨域后ajax能直接调用,可以不用baas.sendrequest
非常感谢,请结贴
回复 支持 反对

使用道具 举报

15

主题

54

帖子

298

积分

中级会员

Rank: 3Rank: 3

积分
298
QQ
发表于 2016-4-13 16:06:12 | 显示全部楼层
先收藏,备用。
回复 支持 反对

使用道具 举报

26

主题

107

帖子

193

积分

初级会员

Rank: 2

积分
193
QQ
发表于 2016-4-15 17:32:31 | 显示全部楼层
teky 发表于 2016-1-27 13:19
跨域文档中我采用JSONP方案
文中的服务端
String callbackName = request.getParameter(“x5callback”); ...

请问你是怎么写的代码,jsonp
回复 支持 反对

使用道具 举报

66

主题

350

帖子

2145

积分

金牌会员

Rank: 6Rank: 6

积分
2145
 楼主| 发表于 2016-4-15 17:41:37 | 显示全部楼层
路小佳 发表于 2016-4-15 17:32
请问你是怎么写的代码,jsonp

不用写代码
这个路径:BaasServer\WEB-INF\web.xml
打开文件把里面跨域功能打开即可
<!-- 跨域访问设置
            <init-param>
              <param-name>Access-Control-Allow-Origin</param-name>
              <param-value>*</param-value>
            </init-param>
                -->
回复 支持 反对

使用道具 举报

26

主题

107

帖子

193

积分

初级会员

Rank: 2

积分
193
QQ
发表于 2016-4-16 08:55:11 | 显示全部楼层
teky 发表于 2016-4-15 17:41
不用写代码
这个路径:BaasServer\WEB-INF\web.xml
打开文件把里面跨域功能打开即可

哎,我后台不是baasserver。
回复 支持 反对

使用道具 举报

3

主题

9

帖子

43

积分

新手上路

Rank: 1

积分
43
QQ
发表于 2016-6-11 23:11:12 | 显示全部楼层
路小佳 发表于 2016-4-16 08:55
哎,我后台不是baasserver。

我能问下  你的跨域问题解决了没?我的后台也不是bassServer....
回复 支持 反对

使用道具 举报

10

主题

28

帖子

82

积分

初级会员

Rank: 2

积分
82
QQ
发表于 2016-7-27 07:00:33 | 显示全部楼层
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-11-24 10:33 , Processed in 0.054432 second(s), 20 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表