|

楼主 |
发表于 2017-11-16 15:32:34
|
显示全部楼层
本帖最后由 snowleaf_love 于 2017-11-16 15:34 编辑
跨域问题找到了:
在baas.net下的ActionHandler.cs类的第83行开始的这段代码有问题:
JObject ret = Engine.ExecAction(effectivePath, paramObject, assembly);
if (null != ret)
{
//设置跨域访问
if (!string.IsNullOrEmpty(accessControlAllowOrigin))
{
response.AddHeader("P3P", "CP=CAO PSA OUR");
response.AddHeader("Access-Control-Allow-Origin", accessControlAllowOrigin);
response.AddHeader("Access-Control-Allow-Credentials", "true");
}
Util.WriteJsonToResponse(response, ret);
}
对于Save类Action,执行Engine.ExecAction(effectivePath, paramObject, assembly),返回的是NULL,但该段代码却把跨域代码放在if (null != ret)这个条件里面,所以实际上没有被执行,导致跨域问题。
当初WEX5推出Bass.net版本到底有没有详细测试,这个问题也太严重了。
这个问题算是找到了,但又有新的问题出现了!!!!!!!
之前代码总算能正常执行,但是在SQL Server 2012的表中却没有增加到记录。我在MYSQL数据库里建了同样的表,可以增加成功。这又是怎么回事? |
|