本文整理汇总了PHP中Wechat::getJsSign方法的典型用法代码示例。如果您正苦于以下问题:PHP Wechat::getJsSign方法的具体用法?PHP Wechat::getJsSign怎么用?PHP Wechat::getJsSign使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Wechat
的用法示例。
在下文中一共展示了Wechat::getJsSign方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getJsSign
function getJsSign()
{
if ($this->request->is('post')) {
$url = $this->request->data('url');
$timestamp = $this->request->data('timestamp');
$nonceStr = $this->request->data('nonceStr');
$appId = 'yourappid';
$wxObj = new Wechat(array('token' => 'yourtoken', 'appid' => $appId, 'appsecret' => 'yourpants'));
//调用对应的函数
$sign = $wxObj->getJsSign($url, $timestamp, $nonceStr);
//如果token失效,清除token重试一次
if ($wxObj->errCode == 40001 || $wxObj->errCode == 42001) {
$wxObj->resetAuth();
$sign = $wxObj->getJsSign();
}
//如果返回false,获取errcode和errmsg
if (!$sign) {
return $this->sentJson(array('errCode' => $wxObj->errCode, 'errMsg' => WechatErrCode::getErrText($wxObj->errCode)));
}
$package = array('signature' => $sign, 'nonceStr' => $nonceStr, 'appId' => $appId, 'timestamp' => $timestamp);
return $this->sentJson(array('errCode' => 0, 'errMsg' => '', 'result' => $package));
}
}
示例2: showTip
function showTip($smarty, $tip, $db, $title)
{
$options = array('token' => WX_TOKEN, 'appid' => WX_APPID, 'encodingaeskey' => '6pnP7qHyqJ1kFXMjuO4Z3QrpOa9WfapsgkPOtXoZKC2', 'appsecret' => WX_SECRET, 'logcallback' => logdebug);
$we = new Wechat($options);
$auth = $we->checkAuth();
$js_ticket = $we->getJsTicket();
$smarty->assign('tip', $tip);
$smarty->assign('title', $title);
$url = 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
$smarty->assign('js_sign', $we->getJsSign($url));
$smarty->display('templates/tip.html');
$db->disconnect();
die;
}
示例3: Wechat
<?php
// WP_Wechat Handle
$wechat = new WP_Wechat();
// wechat-php-sdk Handle
$we = new Wechat(array('appsecret' => $wechat->app_secret, 'appid' => $wechat->app_id));
$auth = $we->checkAuth();
$js_ticket = $we->getJsTicket();
if (!$js_ticket) {
$errcode = $we->errCode;
$errtext = ErrCode::getErrText($weObj->errCode);
echo "获取 js_ticket 失败! 错误码:{$errcode} 错误原因:{$errtext} ";
}
$https = isset($_SERVER['HTTPS']) && 'on' === $_SERVER['HTTPS'];
$url = ($https ? 'https://' : 'http://') . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
$js_sign = $we->getJsSign($url);
?>
<script>
if(window.wx) {
wx.config({
debug: /debug=1/.test(location.href),
appId: '<?php
echo $js_sign['appId'];
?>
', // 必填,公众号的唯一标识
timestamp: <?php
echo $js_sign['timestamp'];
?>
, // 必填,生成签名的时间戳,切记时间戳是整数型,别加引号
nonceStr: '<?php
示例4: getToken
function getToken($url)
{
//引入微信类库
APP::load(APP_FILE . 'common/class/wechat.class.php');
$weObj = new Wechat(APP::$config['wechat']);
// 注意 URL 一定要动态获取,不能 hardcode.
$protocol = !empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off' || $_SERVER['SERVER_PORT'] == 443 ? "https://" : "http://";
$uri = "{$protocol}{$_SERVER['HTTP_HOST']}{$_SERVER['REQUEST_URI']}";
$signPackage = $weObj->getJsSign($uri);
if (!isset($_GET['code'])) {
header("Location: " . $url);
exit;
}
$data = $weObj->getOauthAccessToken();
if (!$data) {
header("Location: " . $url);
exit;
}
$userinfo = $weObj->getOauthUserinfo($data['access_token'], $data['openid']);
$this->assign('signPackage', $signPackage);
$_SESSION['openid'] = $data['openid'];
}
示例5: time
echo '错误码:'.$we->errCode;
echo ' 错误原因:'.ErrCode::getErrText($weObj->errCode);
exit;
}
$timestamp = time();
$noncestr = $we->generateNonceStr();
$url = 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
$js_sign = $we->getJsSign($url, $timestamp, $noncestr); //会自己检测调用checkAuth方法获取access_token
?>
<html>
<head>
<meta charset="utf-8">
<title>JS-SDK测试页</title>
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=0">
<link rel="stylesheet" href="style.css?ts=1420775603">
示例6: json_encode
<?php
include "../qy-sdk/wechat.class.php";
require 'api_rb.php';
require 'api_db.php';
$url = isset($_REQUEST['url']) ? $_REQUEST['url'] : '';
$timestamp = time();
$noncestr = 'Gds_Wechat_CSC_V2';
// Log
_log(json_encode(['url' => $url, 'timestamp' => $timestamp, 'noncestr' => $noncestr]));
// Check
if (empty($url)) {
header('Content-type:text/json;charset=utf-8');
echo json_encode(['result' => 'failed', 'error' => 'missing argument']);
die;
}
// Get Ticket and Sign
$options = ['token' => 'nizhidaoma', 'encodingaeskey' => 'xc8rRK4iOQjTJK9hOYhRrC9sPBJvF5Jhjq203iMC7vF', 'appid' => 'wxe85832e232e73f41', 'appsecret' => '4c8f1aa381675dd2569fc9482052afdc', 'debug' => true, 'logcallback' => '_log'];
$weObj = new Wechat($options);
$jsTicket = $weObj->getJsTicket();
$jsSign = $weObj->getJsSign($url, $timestamp, $noncestr);
// Return
header('Content-type:text/json;charset=utf-8');
echo json_encode(['result' => 'true', 'sign' => $jsSign]);
die;