标签: shopify

Shopify API:调用限制

我在进行突发 api 调用时收到“请求过多”429(代码)错误。

这就是我正在做的事情。

同时发出 39 个请求并等待请求完成。如果收到任何请求的响应,请立即发出新的另一个请求。完成任何请求后,shopify 存储桶中的请求数量应该减少,并且应该处理新发出的请求。但我仍然收到“请求太多”错误。

这是代码片段

    // aquire a permit to enter into block
    boundedSemaphore.acquire();

    // Hit the shopify api
    Response response = RestUtils.invoke(URL, operation,
            MediaType.APPLICATION_JSON_TYPE, headerMap, queryParameterMap,
            MediaType.APPLICATION_JSON_TYPE, signatureMethod);

    // Check response       
    if (!RestUtils.isValidStatusCode(response.getStatus())) {
        throw new SystemException("Status :" +response.getStatus());
    }
    if (response.getHeaderString(X_SHOPIFY_SHOP_API_CALL_LIMIT)
            .equalsIgnoreCase("39/40"))
        Thread.sleep(10000);

    // release permit for other threads to enter            
    boundedSemaphore.release();
Run Code Online (Sandbox Code Playgroud)

在任何给定时间,我这边的活动请求都不超过 39 个。

boundedSemaphore 是 java.util.concurrent.Semaphore,最多有 39 个许可。一次只有 39 个线程可以进入该特定块。完成任何请求后,信号量将释放许可证,新线程将获取该许可证并发出新请求。

Shopify 存储桶大小为 40 个请求,泄漏率为每秒 2 个请求,因此任何请求都不应出现“请求过多”错误。

有谁知道这个问题的原因是什么。

shopify

0
推荐指数
1
解决办法
7804
查看次数

给定具有字符串 id 的 Storefront.Product 节点,如何获取 Admin API 的 ProductId

我正在使用适用于 Android 的 GraphQL shopify buy-sdk,并通过字符串 id 获取产品的节点,例如:

"id" -> "Z2lkOi8vc2hvcGlmeS9Qcm9kdWN0LzEwMDcyMDgwOTc1"
Run Code Online (Sandbox Code Playgroud)

这是节点 ID

但要获取产品元字段,我必须向 Admin API 发出请求

https://SHOP.myshopify.com/admin/products/{productId}/metafields.json
Run Code Online (Sandbox Code Playgroud)

其中 {productId} 是产品的数字 ID,例如:

6243834538
Run Code Online (Sandbox Code Playgroud)

我无法在 REST API 请求中使用节点 ID,收到 400“错误请求”。

所以问题是- 如何在 GraphQL 中获取节点的数字产品 id?

谢谢!

shopify shopify-app

0
推荐指数
1
解决办法
1352
查看次数

如何展示产品对象?

在 Shopify 中,如果我们打印产品标题,那么我们可以使用:

{{ product.title }}
Run Code Online (Sandbox Code Playgroud)

如果我们想显示包含产品全部数据的整个对象,我们该怎么做?提前致谢。

shopify shopify-template

0
推荐指数
1
解决办法
1535
查看次数

如何在shopify的注册表单中添加新字段?

我正在使用shopify,我发现我们如何在注册表中添加额外的字段,但尚未完成。

我在这里检查它只添加在注册表中,但当我获取值时它不会检索。

点击这里

shopify shopify-template

0
推荐指数
1
解决办法
2276
查看次数

如何在 Shopify 部分设置中添加日期时间选择器

如何在Shopify -> Store -> Customize -> Section Setting.

我想添加按计划显示的滑块。因此在那里创建了输入日期时间字段的选项。现在,我希望当我单击该字段时,日期选择器应该可见,就像通常在文本框中完成的那样。

jQuery datepicker我尝试在该部分添加一个。但它总是显示日期选择器未定义。

datepicker shopify jquery-ui-datepicker

0
推荐指数
1
解决办法
9236
查看次数

在 Shopify Liquid 中创建数组

我想在 Shopify Liquid 中创建一个空数组。我试图在官方文档中查找一些信息,但没有什么可看的。

liquid shopify

0
推荐指数
1
解决办法
1050
查看次数

如何使用 PHP 在 Shopify Rest API 中创建分页

我在 php 中创建了curl 来使用shopify 产品休息API。现在我想在其中创建分页。

如何创作?

Link: "<https://{shop}.myshopify.com/admin/api/{version}/products.json?page_info={page_info}&limit={limit}>; rel={next}, <https://{shop}.myshopify.com/admin/api/{version}/products.json?page_info={page_info}&limit={limit}>; rel={previous}"
Run Code Online (Sandbox Code Playgroud)

如何使用链接?

谢谢

php api rest shopify postman

0
推荐指数
1
解决办法
7506
查看次数

用于监视购物车活动的脚本标记 XHR 事件侦听器不再起作用

我有一个应用程序可以将此脚本标签添加到商店中。

过去,我使用此脚本的脚本标签来监视客户的购物车活动。当脚本标签检测到 XHR 时,它会将一些数据发送到我的后端。

var oldXHR = window.XMLHttpRequest;

function newXHR() {
  console.log('XHR detected!')
  var realXHR = new oldXHR();
  realXHR.addEventListener(
    "load",
    function () {
      if (realXHR.readyState == 4 && realXHR.status == 200) {
        if (realXHR._url === "/cart.js" || realXHR._url === "/cart/change.js") {
           // do something....
        }
      }
    },
    false
  );
  return realXHR;
}
window.XMLHttpRequest = newXHR;
Run Code Online (Sandbox Code Playgroud)

但今天我不知道为什么更改购物车和将商品添加到购物车的操作无法再触发 XHR 侦听器。然而,这个脚本标签在我的旧商店中仍然有效。但如果我将其安装到新商店,它不会触发任何内容。我检查脚本标签是否在该新存储中正常运行,但问题是 XHR 侦听器未触发。

有人有一些想法吗?

shopping-cart xmlhttprequest shopify shopify-app

0
推荐指数
1
解决办法
4008
查看次数

使用remove()确保元素在DOM中不可见或通过查看源代码

我希望你能帮我解决我们遇到的 JS 问题。

问题: 当存在类时,我正在删除一个元素,虽然这可以通过检查器从 DOM 中删除该元素,但当我点击 CTR-U 并搜索该元素时,它仍然是可搜索/可见的。

博客文章: https://www.leatherhoney.com/blogs/leather-care/diy-leather-car-interior-detailing-tips

背景: 开发我们网站的公司在我们的博客文章中添加了 (2) 个 H1 标题。如果标头存在,则他们正在使用 CSS 隐藏标头。这当然会产生页面上多个 H1 的问题,即使它在视觉上是隐藏的。

修复: 修复方法是删除隐藏元素的 CSS 属性并将其替换为remove() 函数。理论上,当 CSS 类存在时,这会从页面(以及 SEO 爬虫)中完全删除该元素。

$(".hide-when-banner-enabled").remove();
Run Code Online (Sandbox Code Playgroud)

页面:

这是博客页面https://www.leatherhoney.com/blogs/leather-care/diy-leather-car-interior-detailing-tips

这是源代码页(ctrl-U),您仍然可以在其中看到.hide-when-banner-enabled类,即使它应该被删除: https: //www.leatherhoney.com/blogs/leather-care/diy-皮革汽车内饰细节提示

谁能向我解释为什么这仍然可见,以及是否有更好的方法可以在存在类时删除此重复的 H1 标签,以便 SEO 不受重复标签的影响?

谢谢你!

javascript shopify

0
推荐指数
1
解决办法
570
查看次数

无法安装 shopify CLI - 错误:无法构建 gem 本机扩展

我正在使用 Zorin OS-16.01(基于 Ubuntu 20.04.2 LTS)我试图安装 Shopify CLI。到目前为止我所拥有的-

sudo apt-get install ruby-full
sudo apt-get install ruby-dev
Run Code Online (Sandbox Code Playgroud)

之后,我尝试获取 ruby​​ 版本-

ruby -v
Run Code Online (Sandbox Code Playgroud)

我懂了-

ruby 2.7.0p0 (2019-12-25 revision 647ee6f091) [x86_64-linux-gnu]
Run Code Online (Sandbox Code Playgroud)

然后我尝试使用此命令安装 shopify cli -

sudo gem install shopify-cli
Run Code Online (Sandbox Code Playgroud)

但是,我遇到了错误。这是完整的错误日志。

Building native extensions. This could take a while...
ERROR:  Error installing shopify-cli:
    ERROR: Failed to build gem native extension.

    current directory: /var/lib/gems/2.7.0/gems/ffi-1.15.5/ext/ffi_c
/usr/bin/ruby2.7 -I /usr/lib/ruby/2.7.0 -r ./siteconf20220526-14302-svnr0c.rb extconf.rb
checking for ffi.h... *** extconf.rb failed ***
Could not create Makefile due to some reason, …
Run Code Online (Sandbox Code Playgroud)

rubygems shopify ubuntu-20.04

0
推荐指数
1
解决办法
2052
查看次数

Shopify 应用程序:由于浏览器 cookie 问题,该应用程序无法加载

通过生成应用程序时在 Shopify 商店上npm init @shopify/app@latest运行并安装应用程序时。npm run dev出现以下错误This app can\xe2\x80\x99t load due to an issue with browser cookies. Try enabling cookies in your browser, [switching to another browser](https://community.shopify.com/c/Shopify-Apps/Some-Third-Party-Apps-may-not-be-accessible-on-Chrome-80-update/m-p/650220/thread-id/20503), or contacting the developer to get support.

\n
    \n
  • @shopify/shopify-app-remix版本:1.1.0

    \n
  • \n
  • 节点版本:18.6.1

    \n
  • \n
  • 操作系统:Windows 11

    \n
  • \n
\n

预期行为

\n

该应用程序应正确安装并显示演示页面。

\n

实际行为

\n

该应用程序提供了详细的错误

\n

重现问题的步骤

\n
    \n
  1. 跑步npm init @shopify/app@latest

    \n
  2. \n
  3. 跑步npm start dev

    \n
  4. \n
  5. 安装应用程序

    \n
  6. \n
  7. 启动应用程序 …

node.js shopify shopify-app

0
推荐指数
1
解决办法
1408
查看次数

“意外令牌:”在 Shopify ajax api 中使用 jQuery 时出错

错误

调用 shopify ajax api 时,我在开发人员工具控制台中收到错误消息。

Uncaught SyntaxError: Unexpected token :

在 javascript 控制台中单击此错误会奇怪地显示有效 JSON 的响应:

{
"id":19728251846714,
"properties":null,
"quantity":1,
"variant_id":19728251846714,
"key":"19728251846714:f1a55a69aed71e7c10ca53fd3549edda",
"title":"Ritual Petalos de rosas y vino tinto - Obispado",
"price":139900,
"original_price":139900,
"discounted_price":139900,
"line_price":139900,
"original_line_price":139900,
"total_discount":0,
"discounts":[],
"sku":"",
"grams":0,
"vendor":"Casa Azul Spa",
"taxable":false,
"product_id":1959512244282,
"gift_card":false,
"url":"\/products\/ritual-petalos-de-rosas-y-vino-tinto?variant=19728251846714",
"image":"https:\/\/cdn.shopify.com\/s\/files\/1\/0087\/2267\/7818\/products\/PETALOS_DE_ROSAS_Y_VINO_TINTO.jpg?v=1538589224",
"handle":"ritual-petalos-de-rosas-y-vino-tinto",
"requires_shipping":false,
"product_type":"",
"product_title":"Ritual Petalos de rosas y vino tinto",
"product_description":"\u0026lt;!--\ntd {border: 1px solid #ccc;}br {mso-data-placement:same-cell;}\n--\u003eRitual Pétalos de Rosas y Vino tinto, Exquisito masaje que ofrece bienestar, relajación e hidrata la piel. …
Run Code Online (Sandbox Code Playgroud)

javascript ajax liquid shopify

-3
推荐指数
1
解决办法
1318
查看次数