# Niushop开源商城api
---
niushop针对api进行了整合与专门的设计,同时将前台模板调用通过api返回数据,使之功能更加完善。
### 1. **api调用, 通过api函数:api\($method, $params = \[\]\)**
```
其中$method参数:模块.控制器.方法 模块说明:System表示系统application下面的api模块方法,也可是插件名表示插件中控制器方法。
例如:System.Goods.goodsCategoryList:表示调用application下面api的Goods控制器.goodsCategoryList方法
Nsfx.Distribution.teamList:表示调用Nsfx插件下面api的Distribution控制器teamList方法
$params必须是数组形式,为一维数组
```
### **2. api调用,外界调用,通过api接口实现**
调用方式:[https://域名/api.php?method=System.Goods.goodsCategoryList&传入参数](https://域名/api.php?method=System.Goods.goodsCategoryList&传入参数)
说明:
![](https://img.kancloud.cn/ac/f2/acf27173b78b0fd95e89557020fdccd3_1386x506.png)
```php
注意如果开启了api安全必须传输sign字段,关于sign(签名串)的生成方法:
/**
* md5签名
* @param unknown $key
* @param unknown $params
* @return string
*/
function getSign($key, $params)
{
if (!is_array($params)) $params = array();
ksort($params);
$text = '';
foreach ($params as $k => $v) {
$text .= $k . $v;
}
return md5($key . $text . $key);
}
```