You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

非Rails Ruby环境调用Shopify API出现URI.parser弃用警告如何解决?

问题:非Ruby on Rails环境下Shopify API认证的弃用警告

环境信息

  • Ruby版本:3.1.2
  • Shopify API版本:9.4.1

可复现代码

#!/usr/bin/ruby

require 'shopify_api'

API_KEY='my key'
PASSWORD='my password'
SHOP_NAME='my shop name'

shop_url = "https://#{API_KEY}:#{PASSWORD}@#{SHOP_NAME}.myshopify.com/admin"
ShopifyAPI::Base.api_version = '2023-04'
ShopifyAPI::Base.site = shop_url

警告内容

DEPRECATION WARNING: URI.parser is deprecated and will be removed in Rails 7.0. Use URI::DEFAULT_PARSER instead. (called from at miniTestConnect.rb:15)

解决方法

该警告由shopify_api依赖的Active Support库引发——其中使用了已被弃用的URI.parser方法,该方法将在Rails 7.0中移除。在非Rails环境下,可通过手动指定使用URI::DEFAULT_PARSER消除警告,修改后的代码如下:

#!/usr/bin/ruby

require 'shopify_api'
require 'uri'

API_KEY='my key'
PASSWORD='my password'
SHOP_NAME='my shop name'

# 替换已弃用的解析器
URI.parser = URI::DEFAULT_PARSER

shop_url = "https://#{API_KEY}:#{PASSWORD}@#{SHOP_NAME}.myshopify.com/admin"
ShopifyAPI::Base.api_version = '2023-04'
ShopifyAPI::Base.site = shop_url

也可以等待shopify_api官方更新依赖版本,从根源修复该弃用问题。

内容的提问来源于stack exchange,提问作者martinR

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 15:15:46