首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过postman / Shopify API创建Shopify订单

通过postman / Shopify API创建Shopify订单
EN

Stack Overflow用户
提问于 2019-07-13 10:50:55
回答 2查看 3.8K关注 0票数 2

我遇到了本教程,使用了世界上所有的技术,这些技术应该展示如何从底层构建一个反应应用程序来利用shopify。但是,还有一个此页描述了一个简单的API调用,它或多或少地满足了我的需要。

其目标是拥有一个完全自定义(非常简单)的签出过程,最终在shopify系统中结束。会是这样的:

条纹购买,ok,->,shopify订单,保存->,谢谢页面重定向。

编辑:https://api_key:api_secret.@my-store.myshopify.com/admin/api/2019-07/orders.json格式似乎解决了身份验证问题。呼吁:

GET https://key:secret@my-test-store.myshopify.com/admin/api/2019-07/orders.json返回一个愉快的{ "orders": [] },因此身份验证是a-ok。

然而,做一个POST https://key:secret@my-test-store.myshopify.com/admin/api/2019-07/orders.json

似乎返回了一个神秘的页面,而不是像这样的错误(这只会导致演示商店/应用程序):

因此,总之,我有一个商店,一个经过授权的应用程序(成功地进行身份验证),那么如何以编程方式为现有SKU添加订单呢?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-07-15 18:15:42

你确定请求中没有饼干吗?因为如果我加曲奇的话我可以复制你的问题。

使用curl可能更容易,这样才能绝对清晰地了解正在发布的内容。例如:

代码语言:javascript
复制
# Edit to change app hostname, key/secret, and product/variant/customer ids 

curl -X POST 'https://key:secret@so57018447.myshopify.com/admin/api/2019-07/orders.json' \
-H 'Content-Type: application/json' \
-d '{
  "order": {
    "line_items": [
      {
        "product_id": 2017449607219,
        "variant_id": 17985741619251,
        "quantity": 1
      }
    ],
    "customer": {
      "id": 1257159000115
    },
    "financial_status": "pending"
  }
}
'

响应:

代码语言:javascript
复制
{
  "order": {
    "id":952834392115,
    "email":"",
    "closed_at":null,
    "created_at":"2019-07-15T14:38:18-04:00",
...

但是,如果您想继续使用邮递员,下面是一些支持屏幕截图,显示没有cookies的成功和失败的情况:

确认没有设置cookies:

成功地将文章发送到orders.json端点:

现在,添加一个cookie:

我在你的问题中得到了这样的回答:

票数 4
EN

Stack Overflow用户

发布于 2019-07-16 01:38:42

如果你读了私人应用程序的文档

Shopify不支持使用基本HTTP身份验证的POST请求中的cookie。使用基本身份验证并包含cookie的任何POST请求都将失败,错误代码为200。使用具有基本身份验证的cookie可以使应用程序暴露于CSRF攻击,例如会话劫持。

https://help.shopify.com/en/api/getting-started/authentication/private-authentication

这是故意的,在客户端这样做是犯罪的。如果您正在做一些服务器端的事情,那么使用basic是可以的。但是在客户端你不应该使用它

如果您想在邮递员中使用,那么您需要将它与access_token一起使用。

私有应用程序可以通过包含请求头X-Shopify-Access-Token: {access_token}来验证Shopify,其中{access_token}被私有应用程序的Admin密码所取代。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57018447

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档