我是bigcommerce和jwt令牌的新手。我试图让客户登录api在一家小店上工作。但一直未能成功地自动登录客户。
我让它工作了一两次,但现在它已经不起作用了,而且由于代码没有什么变化,所以无法找出奇怪的行为。我尝试过搜索其他人是否有问题的客户登录api,但没有发现任何。
我已经阅读了关于https://developer.bigcommerce.com/api/v2/#customer-login-api的教程,并复制了所提供的示例。下面的代码中有什么我遗漏了吗?
谢谢。
下面是php代码:
include "vendor/autoload.php";
use Bigcommerce\Api\Client as Bigcommerce;
use Firebase\JWT\JWT;
function getCustomerLoginToken($id, $redirectUrl = '', $requestIp = '') {
/*
if (empty(self::$client_secret)) {
throw new Exception('Cannot sign customer login tokens without a client secret');
}
*/
$payload = array(
'iss' => '#MyApp1's Client ID#',
'iat' => time(),
'jti' => bin2hex(random_bytes(32)),
'operation' => 'customer_login',
'store_hash' => '#Store Hash#',
'customer_id' => $id
);
if (!empty($redirectUrl)) {
$payload['redirect_to'] = $redirectUrl;
}
if (!empty($requestIp)) {
$payload['request_ip'] = $requestIp;
}
return JWT::encode($payload, "#MyApp1's Client Secret#", "HS256");
}
$jwt = getCustomerLoginToken(1);
header("Location: " . 'https://store-#Store Hash#.mybigcommerce.com/login/token/' . $jwt);
exit();发布于 2017-02-15 21:09:35
有几个约束可能导致错误:
如果排除了上述情况,BigCommerce支持可以访问日志,从而更好地了解情况。
希望这能有所帮助!
发布于 2020-04-13 10:08:15
不需要应用程序client_id和秘密代码,您需要api的client_id和秘密代码
https://stackoverflow.com/questions/42237343
复制相似问题