tgy3300

第 644 位会员

会员
个人信息
  • 加入于 2018-09-08 12:02:19
  • 最后登录时间 2年前
个人成就
  • 发表文章次数 56
  • 发布回复次数 123
  • 个人主页浏览次数 37
appserver 中的 /customer/login/account 接口无法识别fetch提交的post数据5年前

还真不一样,是 \yii\web\Request.php getBodyParams()方法存在bug

appserver 中的 /customer/login/account 接口无法识别fetch提交的post数据5年前

你看你的请求头和我上面截图中的请求头是否一样,我的表单数据都在request payload里

appserver 中的 /customer/login/account 接口无法识别fetch提交的post数据5年前

亲测,真获取不了,我看了我本地的代码

LoginController继承于@fecshop\app\appserver\modules\AppserverController.php文件,该文件也是有

$behaviors['contentNegotiator']['formats']['text/html'] = Response::FORMAT_JSON;

跟了一遍代码, 在\yii\web\Request里的getBodyParams()方法中,

程序走这里
} elseif ($this->getMethod() === 'POST') {
	$this->_bodyParams = $_POST;
}

所以才取不到值

如果程序走这里
if (isset($this->parsers[$contentType])) {
...
}

就不会有问题了

我打印 $this->parsers[$contentType] 为空,打印 $contentType 显示为 application/json

appserver 中的 /customer/login/account 接口无法识别fetch提交的post数据5年前

百度下资料,可以这样接收

$final = file_get_contents('php://input');
$data = json_decode($final, true);

我先暂时这样做,大佬有空看看,这是不是个小问题

用js开发了一个单页应用,api使用了fecshop的appserver,使用登录提交接口出现跨域问题5年前

你刚刚问是不是https,我上线后切换成https,没什么问题吧,

用js开发了一个单页应用,api使用了fecshop的appserver,使用登录提交接口出现跨域问题5年前

好了,问题解决了,感谢大佬:+1:,

现在的请求信息变成这样了

用js开发了一个单页应用,api使用了fecshop的appserver,使用登录提交接口出现跨域问题5年前

好的,上面的问题消失了,现在出现新的提示,

Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at http://api.zl.com/customer/login/account. (Reason: missing token ‘content-type’ in CORS header ‘Access-Control-Allow-Headers’ from CORS preflight channel).

我的测试环境是centos 7 下的火狐浏览器

用js开发了一个单页应用,api使用了fecshop的appserver,使用登录提交接口出现跨域问题5年前

更新了,问题还是存在,

/customer/login/account

该接口所在的文件是

@fecshop\app\appserver\modules\Customer\controllers\LoginController.php

该文件继承的是 @fecshop\app\appserver\modules\AppserverController.php 文件,上面更新的文件是@fecshop\app\appserver\modules\AppserverTokenController.php,有用吗?

用js开发了一个单页应用,api使用了fecshop的appserver,使用登录提交接口出现跨域问题5年前

现在还是本地开发测试阶段,所以是http,上线后,肯定是https

我用js开发了一个单页应用,数据接口使用appserver的api,遇到如下问题,求解5年前

把appserver api 的访问域名改成:http://www.a.com

改成这样vue的访问域名是可以的,

如果我的vue是用electron打包成了桌面软件,那么页面的访问url就是file协议的,没有域名了,那@appserver/config/fecshop_local_services/Store.php文件就配置不了域名了,这种情况怎么办呢

还有如果我有两个js应用调用appserver api接口,哪@appserver/config/fecshop_local_services/Store.php文件能同时配置多个域名吗?

我用js开发了一个单页应用,数据接口使用appserver的api,遇到如下问题,求解5年前

换个问法,@appserver/config/fecshop_local_services/Store.php文件配置的访问域名是vue的域名还是appserver自己的访问域名呢?有点疑惑!!

我现在@appserver/config/fecshop_local_services/Store.php文件里配置的访问域名是http://www.b.com

vue的访问域名是:http://www.a.com

appserver api 的访问域名是:http://www.b.com

vue调用appserver api接口时,地址是:POST /customer/login/account

完整的接口请求就变成:POST http://www.a.com/customer/login/account

这样肯定访问不到接口数据的,所以我把/customer/login/account从http://www.a.com 代理到 http://www.b.com

location /customer {
        proxy_pass http://www.b.com;
        proxy_set_header   X-Forwarded-Proto $scheme;
        proxy_set_header   Host              $http_host;
        proxy_set_header   X-Real-IP         $remote_addr;
    }

我这样操作应该可行的吧!!

可结果还是提示

this domain is not config in store component
我用js开发了一个单页应用,数据接口使用appserver的api,遇到如下问题,求解5年前

我知道 this domain is not config in store component 是哪里出的问题,你没看我懂我的问题

fecshop系统能不能关闭“货运”服务呢5年前

这个方法我也想到了,给所有的用户设置一个默认货运信息,然后前端隐藏掉,但这样总感觉美中不足,如果能像作者说的,把 fecshop 的服务以组件化的形式组装,更为强大、灵活

在fecshop中关闭Service报错!5年前

我觉得把 shipping services 改成像 search services ,这种比较灵活,想用,你就开启,不想用就关闭,个人建议

fecshop系统发布的商品价格如何才能使用人民币进行填写5年前

后台设置

前台显示,点击自定义属性,上面的价格不会跟着变

但把产品加入到购物车,价格又是按自定义属性价格来的

按你说的,现在可以使用人民币发布产品了,现在有一个问题,如上截图说明

fecshop系统能不能关闭“货运”服务呢5年前

我现在就想像 xunsearch services 一样,可以通过配置enableService来开启和关闭服务,如果要达到这样的需求,还需要改哪些文件呢,求大致的实现思路

Your Site Analytics