使用Shopify Admin API-我已经能够更新用户的电子邮件地址。
我已经用Postman进行了测试,并传入了一个私人应用秘密密钥。
现在,我想在实际页面上使用此功能,但是有一些问题:
POST /update/useremail
跨客户ID发送有没有人有任何经验/想法/建议来做一个简单的方法?
任何帮助表示赞赏。
谢谢。
答案 0 :(得分:1)
问题:您遇到的问题是,您要验证电子邮件更改请求是否为有效呼叫?然后,如果发现有效,则进行API调用以对其进行更新。
我的解决方案
在Shopify中使用表单创建页面以更新电子邮件。仅显示该页面以登录用户。当用户登陆页面时,向他们显示表单以传递他们想要的新电子邮件。您需要在此处添加一些内容以验证请求。页面加载后,从Shopify后端创建一个哈希字符串,如下所示。
{% if customer != nil %}
{% assign timestamp = 'now' | date: "%s" %} //epoch time stamp
token = {{ customer.email | append: '<random_string>' | append: timestamp | sha256 }}
{% endif %}
每当请求更改电子邮件时,都通过在服务器上创建哈希来在您的末端验证SHA256代码。如果哈希有效,请更新电子邮件。确保在您发出的请求中传递时间戳和旧电子邮件。
您需要解决的安全问题-