我在进行突发 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 个请求,因此任何请求都不应出现“请求过多”错误。
有谁知道这个问题的原因是什么。
我正在使用适用于 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 中,如果我们打印产品标题,那么我们可以使用:
{{ product.title }}
Run Code Online (Sandbox Code Playgroud)
如果我们想显示包含产品全部数据的整个对象,我们该怎么做?提前致谢。
如何在Shopify -> Store -> Customize -> Section Setting.
我想添加按计划显示的滑块。因此在那里创建了输入日期时间字段的选项。现在,我希望当我单击该字段时,日期选择器应该可见,就像通常在文本框中完成的那样。
jQuery datepicker我尝试在该部分添加一个。但它总是显示日期选择器未定义。
我想在 Shopify Liquid 中创建一个空数组。我试图在官方文档中查找一些信息,但没有什么可看的。
我在 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)
如何使用链接?
谢谢
我有一个应用程序可以将此脚本标签添加到商店中。
过去,我使用此脚本的脚本标签来监视客户的购物车活动。当脚本标签检测到 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 侦听器未触发。
有人有一些想法吗?
我希望你能帮我解决我们遇到的 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 不受重复标签的影响?
谢谢你!
我正在使用 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) 通过生成应用程序时在 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.
@shopify/shopify-app-remix版本:1.1.0
节点版本:18.6.1
\n操作系统:Windows 11
\n该应用程序应正确安装并显示演示页面。
\n该应用程序提供了详细的错误
\n跑步npm init @shopify/app@latest
跑步npm start dev
安装应用程序
\n启动应用程序 …
错误
调用 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) shopify ×12
shopify-app ×3
javascript ×2
liquid ×2
ajax ×1
api ×1
datepicker ×1
node.js ×1
php ×1
postman ×1
rest ×1
rubygems ×1
ubuntu-20.04 ×1