查看: 690|回复: 0

[HTML代码] 开发html5炸金花网站搭建token开发者中心配置的问题

发表于 2017-10-27 17:27:35
太阳http代理AD
本帖最后由 h5.ttkmwl.com 于 2017-10-27 17:29 编辑

开发html5炸金花网站搭建(h5.tttkmwl.com)token开发者中心配置的问题
公众号后台配置好以后,设置好token等信息。服务器环境下的demo文件设置好token。保存如果出现token失败,确认模式设置的是明文模式,其它模式需要对信息先处理再验证返回,确认demo文件设置的token与公众号后台配置一致,最后输出echostr
<?php
//简单总结后就应该是这样子,为了后续开发不应该是这样子,结合实际开发情况使用,但token验证仅仅如此就够了
define("TOKEN", "unofficial");
function checkSignature() {
    // you must define TOKEN by yourself
    if (!defined("TOKEN")) {
            throw new Exception('TOKEN is not defined!');
    }

    $signature = $_GET["signature"];
    $timestamp = $_GET["timestamp"];
    $nonce = $_GET["nonce"];

    $token = TOKEN;
    $tmpArr = array($token, $timestamp, $nonce);
    // use SORT_STRING rule
    sort($tmpArr, SORT_STRING);
    $tmpStr = implode( $tmpArr );
    $tmpStr = sha1( $tmpStr );

    if( $tmpStr == $signature ){
        return true;
    }else{
        return false;
    }
}

if( checkSignature() ) {
    echo $_GET['echostr'];
}
?>


在开发html5炸金花网站搭建(h5.tttkmwl.com)过程中我们可以通过申请测试账号来开发测试
测试号的使用有一些限制,测试号开发的网页账号授权需先关注测试号才能进行测试,否则提示未关注测试号

部分接口的测试需要按照配置的url来发起请求
这个我常用的方法是修改本地host文件来实现,还有一些其他的解决方案,但是我就是常用这个。

区分accessToken
access_token是公众号的全局唯一票据,公众号调用各接口时都需使用access_token。开发者需要进行妥善保存。access_token的存储至少要保留512个字符空间。access_token的有效期目前为2个小时,需定时刷新,重复获取将导致上次获取的access_token失效。由于请求次数有限制,最好缓存一下。但这里要说的是网页账号的请求也需要一个accessToken,此非彼。网页授权是通过code换取access_token这个是没有请求限制的,但是对于当前登录用户还是需要缓存一下,请求用户信息或切换页面是还是需要验证用户信息的。一开始有混淆,这里总结一下。

sae来做服务器环境的情况下需要注意的一些问题
我使用的sae版本的thinkphp来开发的本次项目,官网下载sae版本的,sae代码版本管理工具选择的是git,提交代码,为什么报错了?sae的环境因素决定使用时需要初始化Memcache。
数据库的链接模式在5.3以后建议使用pdo模拟,于是这个地方配置的问题,如果使用sae官方版本直接使用内置配置,不需要按照网上教程手动创建添加配置config_sae.php。

php函数优化使用的学习,用途是针对url中的数据编码
//base64_encode();
//base64_decode();
function base64url_encode($data) {
    return rtrim(strtr(base64_encode($data), '+/', '-_'), '=');
}

function base64url_decode($data) {
    return base64_decode(str_pad(strtr($data, '-_', '+/'), strlen($data) % 4, '=', STR_PAD_RIGHT));
}




太阳http代理AD
回复

使用道具 举报