我是Shopify的新手, 我必须在laravel 5中使用It的Shopify API开发shopify app API。 我在我的开发商店中创建了应用程序,但是当我尝试在商店中安装它时,它会给出身份验证错误。
根据用户点击安装应用程序时的文档,它会重定向到应用程序回调网址,其中访问代码为url字符串中的'code'
参数。
通过使用此代码,我们需要调用验证请求方法来生成永久访问令牌。
当我尝试这样做时,shopify会将我重定向到回调网址,但列表中没有'code'
。
我已经在我的应用中设置了回调网址,这是我的本地主机网址,由ngrok网址(http://36481603.ngrok.io
)转换为使用此网址我正在将用户重定向到我的API控制器,我在下面的代码...
$sh = App::make('ShopifyAPI');
try
{
$verify = $sh->verifyRequest(Input::all());
if ($verify)
{
$code = Input::get('code');
$accessToken = $sh->getAccessToken($code);
}
else
{
// Issue with data
}
}
catch (Exception $e)
{
echo '<pre>Error: ' . $e->getMessage() . '</pre>';
}
请提供shopify中新应用开发的分步说明文件。
提前致谢。
答案 0 :(得分:0)
通过使用此代码,我们需要调用验证请求方法来生成永久访问令牌。。
我不认为你在这种情况下是正确的,验证请求方法不会生成访问令牌,但会验证请求的有效性。
任何时候点击你的应用程序来安装你的应用程序shopify都会在查询字符串中附加四个项目,即代码,签名,商店,时间戳。
您需要使用商店网址构建一个网址以获取访问令牌,在这种情况下,我不知道您是否使用封装方法进行写入。 例如。 $ url =“https:// {$ shop} / admin / oauth / access_token”。 并将您的apikey发送为client_id,api_secret作为client_secret,并将您从网址获取的代码作为代码形成并发送作为发布请求以获取访问令牌。