Etsy 项目技术文档
1. 安装指南
Etsy 是一个 Ruby gem,提供了对 Etsy API 的友好接口。以下是安装指南:
-
安装最新稳定版本:
gem install etsy
-
如果希望使用最新的开发版本,可以从 GitHub 安装:
git clone git://github.com/iamfmjk/etsy.git cd etsy rake install
依赖
该 gem 已经验证可以与 json 的 1.5.0 版本一起工作。它可能会与更高版本一起工作,但这尚未经过验证。
2. 项目使用说明
在使用这个项目之前,您需要在 etsy.com/your/apps 上创建一个应用,这将为您提供 API 密钥和密钥。
在 IRB 中粘贴以下内容,用您在 Etsy 上获得的 API 密钥和密钥替换:
require 'etsy'
Etsy.protocol = "https"
Etsy.api_key = 'YOUR API KEY'
Etsy.api_secret = 'YOUR SECRET'
request = Etsy.request_token
Etsy.verification_url
将验证 URL 粘贴到浏览器中,并授权应用程序。这将给您一个包含代码的页面。在 IRB 中粘贴以下内容,替换代码:
access = Etsy.access_token(request.token, request.secret, 'CODE')
Etsy.myself(access.token, access.secret)
如果您收到了 401 未授权错误,那么您可能没有有效的 API 密钥和密钥,或者验证 URL 已超时。
3. 项目 API 使用文档
Etsy API 有两种模式:公共模式和认证模式。
公共模式
公共模式只需要 API 密钥:
require 'etsy'
Etsy.api_key = 'foobar'
从那里,您可以进行任何非认证的 API 调用。
认证调用
Etsy API 支持对认证用户的扩展信息的检索和写支持。认证可以从控制台或 Ruby Web 应用程序中执行。
控制台
对于从控制台进行简单认证,配置必要的参数:
require 'etsy'
Etsy.api_key = 'key'
Etsy.api_secret = 'secret'
首先,生成请求令牌:
request = Etsy.request_token
然后,您需要将验证 URL 粘贴到浏览器中:
Etsy.verification_url
一旦允许访问,您可以通过提供 Etsy 网站上显示的验证器来生成访问令牌:
access = Etsy.access_token(request.token, request.secret, 'abc123')
现在可以通过传递访问令牌和密钥来发出认证调用:
Etsy.myself(access.token, access.secret)
对于认证调用,必须传递密钥和密钥。
auth = {:access_token=>access.token, :access_secret=>access.secret}
Etsy::Transaction.find_all_by_shop_id(shop_id, auth.merge(options))
Web 应用程序
通过 Web 应用程序进行认证的过程相似,但需要配置回调 URL:
require 'etsy'
Etsy.api_key = 'key'
Etsy.api_secret = 'secret'
Etsy.callback_url = 'http://localhost:4567/authorize'
在这种模式下,您需要在重定向到验证 URL 之前存储请求令牌和密钥。以下是一个使用 Sinatra 的简单示例:
enable :sessions
get '/' do
request_token = Etsy.request_token
session[:request_token] = request_token.token
session[:request_secret] = request_token.secret
redirect Etsy.verification_url
end
get '/authorize' do
access_token = Etsy.access_token(
session[:request_token],
session[:request_secret],
params[:oauth_verifier]
)
# access_token.token 和 access_token.secret 可以保存下来用于未来的 API 调用
end
环境
Etsy API 之前有一个沙盒环境和生产环境。他们最近取消了沙盒环境,但设置环境的能力已经保留,以防在 v3 中实现。
如果没有设置,默认值是:生产。
您可以使用以下方式设置:
Etsy.environment = :production
4. 项目安装方式
Etsy 可以通过以下两种方式进行安装:
-
通过 Ruby gem:
gem install etsy
-
从 GitHub 源代码安装:
git clone git://github.com/iamfmjk/etsy.git cd etsy rake install
以上就是 Etsy 项目的技术文档,希望对您有所帮助。
- 国产编程语言蓝皮书《国产编程语言蓝皮书》-编委会工作区016
- nuttxApache NuttX is a mature, real-time embedded operating system (RTOS).C00
- qwerty-learner为键盘工作者设计的单词记忆与英语肌肉记忆锻炼软件 / Words learning and English muscle memory training software designed for keyboard workersTSX027
- 每日精选项目🔥🔥 01.17日推荐:一个开源电子商务平台,模块化和 API 优先🔥🔥 每日推荐行业内最新、增长最快的项目,快速了解行业最新热门项目动态~~026
- Cangjie-Examples本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。Cangjie045
- 毕方Talon工具本工具是一个端到端的工具,用于项目的生成IR并自动进行缺陷检测。Python039
- PDFMathTranslatePDF scientific paper translation with preserved formats - 基于 AI 完整保留排版的 PDF 文档全文双语翻译,支持 Google/DeepL/Ollama/OpenAI 等服务,提供 CLI/GUI/DockerPython05
- mybatis-plusmybatis 增强工具包,简化 CRUD 操作。 文档 http://baomidou.com 低代码组件库 http://aizuda.comJava03
- advanced-javaAdvanced-Java是一个Java进阶教程,适合用于学习Java高级特性和编程技巧。特点:内容深入、实例丰富、适合进阶学习。JavaScript0108
- taro开放式跨端跨框架解决方案,支持使用 React/Vue/Nerv 等框架来开发微信/京东/百度/支付宝/字节跳动/ QQ 小程序/H5/React Native 等应用。 https://taro.zone/TypeScript09