Shopify Embedded App 验证对我的 postgresql 数据库的请求
Shopify Embedded App authenticating requests to my postgresql db
shopify 是否有验证对我的 postgresql 数据库的请求的方法。我获得了使用 rails(后端)上的 ruby 和 Polaris(前端)上的 react.js 完成的 shopify 嵌入式应用程序的代码,我看到前端向后端发出请求而没有任何 headers 或授权。
示例:
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 开发人员的新手。
Shopify 通常会传递一个 hmac
参数,需要在后端进行验证。
这个 hmac 主要包含静态信息,例如您的商店名称、时间戳、语言等...但重要的部分是添加了 APP 密码。
您可以在此处阅读更多相关信息:https://help.shopify.com/en/api/getting-started/authentication/oauth#verification
这意味着您无法在 Shopify 之外发出请求。
shopify 是否有验证对我的 postgresql 数据库的请求的方法。我获得了使用 rails(后端)上的 ruby 和 Polaris(前端)上的 react.js 完成的 shopify 嵌入式应用程序的代码,我看到前端向后端发出请求而没有任何 headers 或授权。
示例:
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 开发人员的新手。
Shopify 通常会传递一个 hmac
参数,需要在后端进行验证。
这个 hmac 主要包含静态信息,例如您的商店名称、时间戳、语言等...但重要的部分是添加了 APP 密码。
您可以在此处阅读更多相关信息:https://help.shopify.com/en/api/getting-started/authentication/oauth#verification
这意味着您无法在 Shopify 之外发出请求。