ShopsN开源商城系统

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 24387|回复: 2

[官方说明文档] ShopsN接口api站配置方法

[复制链接]

73

主题

209

帖子

2161

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2161
发表于 2017-10-13 00:30:48 | 显示全部楼层 |阅读模式
api站顾名思义是专门为api接口服务的。之所以与www分离出来,原因是ShopsN设计理念是更加偏重于企业成长性需求,而不是一个难以扩展开发的小网店。这也是ShopsN与其他b2c商城系统的较大区别之一。
ShopsN更加适合移动端扩展的开发需求。


现在介绍一下api站点的配置内容。
假设你的web站点是   web.yourdomain.com   web可随意根据需要改动,如shop、www等
api站点是                    api.yourdomain.com   尽量取名叫api 吧


api根目录\Application\Common\Conf 下有两个文件  config.php   db.php
快速查找可按ctrl+F 配置方式如下:
config.php
第一处:define('__SERVER__', 'http://test.shopsn.net'); 这里将demo.shopsn.net改为web.yourdomain.com
第二处:    //图片域名地址
    'img_url'            => 'http://test.shopsn.net',  这里将demo.shopsn.net改为web.yourdomain.com
第三处: //同步跳转
'return_url' => "http://api.shopsn.net/#/home",  这里将api.shopsn.net改为api.yourdomain.com
第四步://异步通知地址
'notify_url' => "http://api.shopsn.net/home/AlipayMobile/aliMobileNot",   这里将api.shopsn.net改为api.yourdomain.com



db.php 这是配置数据库链接的 ,api站点与web站点公用同一个数据库

    'DB_TYPE' => 'mysql', //数据库类型
    'DB_HOST' => '127.0.0.1', //数据库主机
    //'DB_NAME' => 'root', //数据库名称
    'DB_NAME' => 'root', //数据库名称
    'DB_USER' => 'root, //数据库用户名
    'DB_PWD'  => '123456', //数据库密码
    'DB_PORT' => '3306', //数据库端口
    'DB_PREFIX' => 'db_', //数据库前缀
    'DB_CHARSET'=> 'utf8', // 字符集
    'DB_DEBUG'  => true, // 数据库调试模式 开启后可以记录SQL日志
一般来说只需要改这几行黑体的。其他的没特殊情况不需要改。


还有个地方不要忘记了
api站根目录\Application\Home\Controller\CommonController.class.php
CommonController.class.php修改方法
文本编辑器搜索demo.shopsn.net即可查找到三处网址,进行替换为你的web站点名称即可,如下

        //加@符号curl就会把它当成是文件上传处
        curl_setopt( $ch,CURLOPT_URL,"http://web.yourdomain.com/index.php/Home/AppUpload/headerUpload" );
        //加@符号curl就会把它当成是文件上传处
        curl_setopt( $ch,CURLOPT_URL,"http://web.yourdomain.com/index.php/Home/AppUpload/commentUpload" );


短信发送验证码
api站根目录/Application/Home/ControllerCommonController.class.php文件内的send_msg方法按代码内的提示修改实际申请的短信账户名、密码、发送内容和短信请求路径


支付
api站根目录/rsa_private_key.pem为支付宝私钥   api站根目录/rsa_public_key.pem为开放平台公钥
api站根目录\Application\Home\Controller\PayController.class.php文件为APP端支付控制器,包含支付宝支付和微信支付,按注释修改相应的信息。
api站根目录\Application\Home\Controller\AlipayMobileController.class.php文件为手机移动网站支付控制器,根据自行注释修改支付配置

注意:尽量不要用记事本修改!这会产生bom头。关于这个bom头,几乎所有开发者都被坑过。很多代码会因为bom导致异常错误。而代码是没有任何问题的!建议用sublime webstorm等专业工具。
当然,你要是已经踏进坑了。我也有办法。在2.2.1发布后,api站的代码下载目录内,我赠送大家一个小工具,名为killbom.php。只需要传到任意你需要清理bom的站点根目录,在浏览器执行即可。OK,bom被杀死了 :)

关联贴:ShopsN移动端编译安装及排除故障大全
回复

使用道具 举报

73

主题

209

帖子

2161

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2161
 楼主| 发表于 2017-10-14 11:16:08 | 显示全部楼层
都配置好后,编译移动端传到服务器的mobile目录下。浏览器调试www.xxx.com/mobile 可能会发现底部栏能打开,上面的内容一直显示3个点在加载。按F12 看consoul选项,可能会发现

Failed to load resource: the server responded with a status of 404 (Not Found)
/mobile/#/home:1 XMLHttpRequest cannot load http://api.xxxxx.com/Home/Index/home. No \'Access-Control-Allow-Origin\' header is present on the requested resource. Origin \'http://aaa.xxxxx.com\' is therefore not allowed access. The response had HTTP status code 404.

xxx为你的域名
请开启服务器的url rewrite功能。
url重写文件放置在百度云盘的ShopsN的api站目录下。
免费使用的用户,请务必仔细翻一下论坛的官方各种安装说明及管网首页的开发文档。因为别人是没有义务和精力来达到让每个人都满意的程度的。必要的自己动手能力和看文档的耐心是必需的。我们的qq群是用来讨论问题的,我不希望成为新手找人手把手教他的地方。安装不了这种问题请尽量少提。我更不欢迎只会吐槽而无任何改进问题详述的言论。如果大家都能尽自己的力,能完善代码,哪怕是一个小文件发给我们负责反馈的人也是对大家莫大的贡献!
回复 支持 反对

使用道具 举报

0

主题

1

帖子

6

积分

新手上路

积分
6
发表于 2018-9-5 20:44:18 | 显示全部楼层
请教一下,我的手机端也是出现了404,但是我也把网盘的.htaccess 放到了api的根目录,还是提示404。

这是报的错误
3个W.dailupifu.com
api.dailupifu.com
POST xxx(-----不能发url-------).com/Home/Index/home 404 (Not Found)
(anonymous) @ xhr.js:178
t.exports @ xhr.js:12
t.exports @ dispatchRequest.js:50
1.3a1cb13….js:2000 Error: Request failed with status code 404
    at t.exports (xxx/mobile/static/js/vendor.45804ad3ea72e917c03f.js:11:111395[/url])
    at t.exports (xxx/mobile/static/js/vendor.45804ad3ea72e917c03f.js:11:115312[/url])
    at XMLHttpRequest.p.(anonymous function) (xxx/mobile/static/js/vendor.45804ad3ea72e917c03f.js:11:110150[/url])
回复 支持 反对

使用道具 举报

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

本版积分规则

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