【问题标题】:How to authenticate Shopify App using Laravel 5如何使用 Laravel 5 对 Shopify 应用进行身份验证
【发布时间】:2015-06-09 13:54:04
【问题描述】:

我是 Shopify 的新手, 我必须在 laravel 5 中使用它的 Shopify API 开发 shopify 应用程序 API。 我在我的开发商店中创建了应用程序,但是当我尝试在商店中安装它时出现身份验证错误。

根据文档,当用户单击安装应用程序时,它会重定向到应用程序回调 url,访问代码为 url 字符串中的 'code' 参数。 通过使用此代码,我们需要调用验证请求方法来生成永久访问令牌。 当我尝试执行此操作时,shopify 会将我重定向到回调 url,但列表中没有 'code'

我在我的应用程序中设置了回调 url,这是我的 localhost url,通过使用此 url 由 ngrok url (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 中开发新应用的分步文档,请提供。

提前致谢。

【问题讨论】:

    标签: api laravel shopify


    【解决方案1】:

    通过使用此代码,我们需要调用验证请求方法来生成永久访问令牌。

    1. 我认为您在这种情况下是不对的,验证请求方法不会生成访问令牌,而是验证请求的有效性。

    2. 任何时候任何人点击您的应用来安装您的应用,shopify 都会将四个项目附加到查询字符串中,它们是代码、签名、商店、时间戳。

    3. 您需要使用商店 url 构造一个 url 以获得访问令牌,在这种情况下,我不知道您是否正在使用封装的方法编写它。 例如。 $url = "https://{$shop}/admin/oauth/access_token"。 并将您的 apikey 作为 client_id、api_secret 作为 client_secret 以及您从 url 获得的代码作为代码发送,并作为 post 请求发送给 shopify 以获取访问令牌。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-10-09
      • 1970-01-01
      • 2017-06-14
      • 2020-07-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-01-07
      相关资源
      最近更新 更多