我正在使用ShopifySharp来尝试使用一个购物订单webhook作为一个购物私人应用程序。
我不能让它通过验证。我的猜测是使用了错误的密钥。
根据ShopifySharp的code (第236行):
<param name="shopifySecretKey">Your app's secret key.</param>
根据他们的Shopify Developer's Handbook,它规定使用你的应用程序的秘密:
var isValidRequest = await AuthorizationService.IsAuthenticWebhook(
Request.Headers.ToKvps(),
Request.InputStream,
ApplicationEngine.ShopifySecretKey);我的代码:
var isValidRequest = await AuthorizationService.IsAuthenticWebhook(
Request.Headers.ToKvps(),
Request.InputStream,
shopifyPrivateAppSecretKey);发布于 2021-01-29 06:58:02
终于想明白了。事后看来,这是相当明显的:)
对于私人购物应用程序,您不使用您的应用程序的秘密,因为在私人应用程序的上下文中没有引用它。在这种情况下,您可以在实际商店中的Private App设置中使用共享密钥:

对于公共应用(我们也在开发过程中,所以事情变得混乱),你可以在你的合作伙伴应用设置中使用你的应用的API密钥:

希望这能帮助某个人else...or,也许我是唯一一个把这件事搞糊涂的人:)
https://stackoverflow.com/questions/65943823
复制相似问题