温馨提示:本文翻译自stackoverflow.com,查看原文请点击:ruby on rails - Shopify Embedded App authenticating requests to my postgresql db
postgresql postman ruby-on-rails shopify

ruby on rails - Shopify嵌入式应用程序对我的Postgresql数据库的身份验证请求

发布于 2020-04-25 16:53:23

shopify是否具有验证对我的postgresql数据库的请求的方法。我得到了一个代码,用于一个Shopify嵌入式应用程序,该应用程序是使用Rails上的ruby(后端)和带有Polaris的react.js(前端)完成的,我看到前端在没有任何标头或授权的情况下向后端发出了请求。

例:

axios.get('/api/main/vendor’)
.then(response=> {
    console.log(response)
})
.catch(error=> {
    console.log(error)
});

这似乎可行,并打印出后端的响应。

但是,当我运行服务器并通过Postman发出GET请求时,传入以下URL:

https://<NGROK_URL>/api/main/vendor

我可以在终端中看到状态为302(重定向为登录)。

Processing by Api::MainController#vendor as JSON
Redirected to https://<NGROK_URL>/login
Completed 302 Found in 19ms (ActiveRecord: 0.0ms)

我想知道在开发我不知道的嵌入式应用程序时,shopify是否进行某种身份验证。例如,它是否隐式传递了一些令牌?如果是这样,我在哪里可以找到。很抱歉这个问题是否听起来像是新词,我对Shopify开发人员来说还很陌生。

查看更多

提问者
jim
被浏览
8
drip 2020-02-08 15:48

Shopify通常会传递一个hmac需要在后端进行验证参数。

此hmac主要包含静态信息,例如您的商店名称,时间戳,语言等...,但重要的部分是使用APP密码进行了固定处理。

您可以在此处阅读有关此内容的更多信息:https : //help.shopify.com/en/api/getting-started/authentication/oauth#verification

这意味着您不能在Shopify之外发出请求。