我正在使用 Java 原始 HTTP 客户端连接到 Shopify API(具体来说,使用Play Framework 和非默认同步驱动程序,它实际上是 JDK 的默认驱动程序)。
我的应用程序通常设法成功连接并通过调用/admin/oauth/access_token
端点将临时访问令牌转换为永久访问令牌。
但是,有时我会从 API 中得到这个错误结果:
Generic Error(400)
{"error":"invalid_request"}
我无法重现我的测试商店的问题 - 我尝试安装新商店,卸载后重新安装现有商店,我不确定为什么这个调用有时会失败以及如何调试它。对于使用我们的应用程序的某些商店,API 调用仍然继续成功。
我正在做的一些事情:
- 即使商店的 URL 在自定义域上,我总是使用
https://foo.myshopfiy.com/admin/oauth/access_token
URL 而不是自定义域的 URL,以防止重定向。 - 我总是使用一个
https
URL 而不是一个 URLhttp
,再次防止重定向(我们注意到 Java HTTP 客户端的重定向存在一些问题,因此我们的目标是实现零重定向) - 我发现的有关此错误的线程表明我们的 SSL 证书可能存在问题,但是我认为这不是我的问题,因为某些请求对我们有用,并且在我们的机器上运行 openssl 的结果没有显示任何问题。
我应该如何进行?使用 Shopify 开支持票?
仅供参考,我看到这个具体问题是在 2013 年 2 月 19 日昨天才开始的,所以它可能是一个暂时的问题。