收藏此站 联系我们 网站
当前位置:首页» 行业网站案例 » 【建站服务】庆阳网站制作【庆阳网站优化】庆阳建网站、庆阳微信公众号运营、庆阳网页设计、庆阳微信小程序商城-域名申请

【建站服务】庆阳网站制作【庆阳网站优化】庆阳建网站、庆阳微信公众号运营、庆阳网页设计、庆阳微信小程序商城-域名申请

作者: 风兰 . 阅读量: 5 . 发表时间:2022-09-20 15:50:01

网站建设
​

上往建站提供服务器空间服务商,百度快照排名,网站托管,百度推广运营,致力于设计外包服务与源代码定制开发,360推广,搜狗推广,增加网站的能见度及访问量提升网络营销的效果,主营:网站公司,百度推广公司电话,官网搭建服务,网站服务企业排名,服务器空间,英文域名等业务,专业团队服务,效果好。


庆阳网站制作【庆阳网站优化】庆阳建网站、庆阳微信公众号运营、庆阳网页设计、庆阳微信小程序商城

网站建设.jpg

庆阳,习称“陇东”,是甘肃省辖地级市,甘肃的石油天然气化工基地、长庆油田主产区。截至2020年7月,辖1个区、7个县,总面积27119平方公里,总人口265万,常住人口227.88万人,城镇人口90.98万。

庆阳地处中国西部地区、甘肃省东部,东接陕西省的宜君、黄陵、富县、甘泉、志丹等县;北邻陕西省定边、吴起、志丹县及宁夏回族自治区盐池县;西与宁夏回族自治区固原市原州区、彭阳县、同心县接壤;南与甘肃省的泾川县及陕西的彬州市、长武、旬邑县相连。被誉为“红色圣地、岐黄故里、农耕之源、能源新都”,素有“陇东粮仓”的美称。 [1-2] 

庆阳市是是“环江翼龙”和“黄河古象”的故乡,中国“第一块旧石器”的出土地,中华民族早期农耕文明的发祥地之一,中医药文化的发祥地、中医鼻祖岐伯的出生地,甘肃的革命老区,长庆油田的发源地。

2019年,庆阳市完成生产总值742.94亿元,同比增长5.3%。 [3]  2020年,庆阳市实现地区生产总值754.73亿元,比2019年增长4.3%。

假设请求的接口服务链接是:

/shop/?service=Welcome.Say&version=1.2.3

则会按以下方式生成并验证签名。

  • 1、排除签名参数(默认是sign)

    ?service=Welcome.Say&version=1.2.3
  • 2、将剩下的全部参数,按参数名字进行字典排序

    service=Welcome.Sayversion=1.2.3
  • 3、将排序好的参数,全部用字符串拼接起来

    "Welcome.Say1.2.3" = "Welcome.Say" + "1.2.3"
  • 4、进行md5运算

    35321cc43cfc1e4008bf6f1bf = md5("Welcome.Say1.2.3")
  • 5、追加签名参数

    ?service=Default.Index&username=dogstar&sign=5321cc43cfc1e4008bf6f1bf

开启默认签名后,需要按以上算法生成签名sign,并且在每次请求接口服务时加上此参数。在缺少签名或者签名错误情况下,会提示类似以下的错误。

{    "ret": 406,    "data": [],    "msg": "非法请求:签名错误"}

接口服务白名单配置

细心的读者会发现,对于默认的接口服务Default.Index是不需要进行签名验证的,这是因为在接口服务白名单中进行了配置。对于配置了白名单的接口服务,将不会触发过滤器的调用。

接口服务白名单配置是:app.service_whitelist,即配置文件./Config/app.php里面的service_whitelist配置,其默认值是:

    'service_whitelist' => array(        'Default.Index',
    ),

配置的格式有以下四种。

表2-4 接口服务白名单匹配类型

类型

配置格式

匹配规则

示例及说明

全部

*.*

匹配全部接口服务(慎用!)

如果配置了此规则,即全部的接口服务都不触发过滤器。

方法通配

Default.*

匹配某个类的任何方法

即Api_Default接口类的全部方法

类通配

*.Index

匹配全部接口类的某个方法

即全部接口类的Index方法

具体匹配

Default.Index

匹配指定某个接口服务

即Api_Default::Index()

如果有多个生效的规则,按短路判断原则,即有任何一个白名单规则匹配后就跳过验证,不触发过滤器。

以下是更多的示例:

    'service_whitelist' => array(        '*.Index',           // 全部的Index方法
        'Test.*',            // Api_Test的全部方法
        'User.GetBaseInfo',  // Api_User::GetBaseInfo()方法
    ),

配置好上面的白名单后,以下这些接口服务全部不会触发过滤器:

// 全部的Index方法?service=Default.Index?service=User.Index// Api_Test的全部方法?service=Test.DoSth
?service=Test.Hello
?service=Test.GOGOGO// Api_User::GetBaseInfo()方法?service=User.GetBaseInfo

2.2.4 扩展你的项目

如何定制接口服务的传递方式?

虽然我们约定统一使用?service=Class.Action的格式来传递接口服务名称,但如果项目有需要,也可以采用其他方式来传递。例如使用斜杠而非点号进行分割:?service=Class/Action,再进一步,使用r参数,即最终接口服务的参数格式为:?r=Class/Action。

如果需要采用其他传递接口服务名称的方式,则可以重写PhalApi_Request::getService()方法。以下是针对改用斜杠分割、并换用r参数名字的实现示例:

// $ vim ./Shop/Common/Request/Ch1.php<?phpclass Common_Request_Ch1 extends PhalApi_Request {    public function getService() {        // 优先返回自定义格式的接口服务名称
        $service = $this->get('r');        if (!empty($service)) {            return str_replace('/', '.', $service);
        }        return parent::getService();
    }
}

实现好自定义的请求类后,需要在项目的入口文件./Public/shop/index.php进行注册。

// $ vim ./Public/shop/index.php//装载你的接口DI()->loader->addDirs('Shop');

DI()->request = new Common_Request_Ch1();

这样,除了原来的请求方式,还可以这样请求接口服务。

表2-5 使用?r=Class/Action格式定制后的方式

原来的方式

现在的方式

/shop/?service=Default.Index

?r=Default/Index

/shop/?service=Welcome.Say

?r=Welcome/Say

这里有几个注意事项:

  • 1、重写后的方法需要转换为原始的接口服务格式,即:Class.Action

  • 2、为保持兼容性,子类需兼容父类的实现。即在取不到自定义的接口服务名称参数时,应该返回原来的接口服务。

除了在框架编写代码实现其他接口服务的传递方式外,还可以通过Web服务器的规则Rewirte来实现。假设使用的是Nginx服务器,那么可以添加以下Rewrite配置。

    if ( !-f $request_filename )
    {        rewrite ^/shop/(.*)/(.*) /shop/?service=$1.$2;
    }

重启Nginx后,便可得到以下这样的效果。

表2-6 使用Nginx服务器Rewrite规则定制后的方式

原来的方式

现在的方式

/shop/?service=Default.Index

/shop/default/index

/shop/?service=Welcome.Say

/shop/welcome/say

此外,还有第三种指定传递方式的方案。使用第三方路由规则类库,然后通过简单的项目配置,从而实现更复杂、更丰富的规则定制。这部分后面会再进行讨论。


庆阳网站制作【庆阳网站优化】庆阳建网站、庆阳微信公众号运营、庆阳网页设计、庆阳微信小程序商城


上往建站提供搭建网站,域名注册,官网备案服务,网店详情页设计,企业网店,专业网络店铺管理运营全托管公司咨询电话,服务器空间,微信公众号托管,网页美工排版,致力于域名申请,竞价托管,软文推广,全网营销,提供标准级专业技术保障,了却后顾之忧,主营:虚拟主机,网站推广,百度竞价托管,网站建设,上网建站推广服务,网络公司有哪些等业务,专业团队服务,效果好。

服务热线:400-111-6878 手机微信同号:18118153152(各城市商务人员可上门服务)


关键词:网站建设,企业网站,网站制作,网页设计,高端网站建设,企业网站制作,网页制作,制作网站,网站设计,高端网页设计,高端网站设计,做网站,自适应网站

全国服务热线
18114747181
二维码
手机端二维码
上往建站
地址:全国各地都有驻点商务 |  网站建设:上往建站
在线咨询QQ:1120768800
 
QQ在线咨询
售前咨询热线
18114747181
营销顾问
营销顾问
售后服务热线
400-000-1116
售后服务
售后服务