下面是对“Ruby微信开发的几个开源项目介绍”的完整攻略,包含两个示例的详细讲解:
Ruby微信开发的几个开源项目介绍
1. 微信公众号开发 gem: weixin_authorize
weixin_authorize
是一款 Ruby 编写的微信公众号开发 gem,提供了微信公众号开发的全部功能和 API,能够很方便地进行微信公众号开发。主要功能包括:获取 access_token、获取用户基本信息、获取用户列表、发送客服消息等。
我们可以通过如下指令在 Ruby 中进行安装:
gem install weixin_authorize
下面是通过 weixin_authorize 实现的一个简单的功能:自动回复文本消息。
require 'weixin_authorize'
class WXController < ApplicationController
skip_before_action :verify_authenticity_token
def index
xml = request.body.read
if params[:signature] == Digest::SHA1.hexdigest([params[:timestamp], params[:nonce], Rails.application.credentials.dig(:weixin, :token)].sort.join)
options = {
token: Rails.application.credentials.dig(:weixin, :token),
appid: Rails.application.credentials.dig(:weixin, :appid),
appsecret: Rails.application.credentials.dig(:weixin, :appsecret),
partner_id: Rails.application.credentials.dig(:weixin, :partner_id),
partner_key: Rails.application.credentials.dig(:weixin, :partner_key)
}
weixin_authorize = WeixinAuthorize::Mp.new(options)
hash = weixin_authorize.parse_xml(xml)
if (hash[:MsgType] == 'text')
content = hash[:Content]
msg = WeixinAuthorize::Message::Text.new(content, hash)
return render xml: msg.to_xml
else
return render text: ''
end
else
return render text: 'error'
end
end
end
2. 微信支付 gem:wechat_pay
wechat_pay
是一款 Ruby 编写的微信支付 gem,封装了微信支付的所有 API,包括统一下单、订单查询、退款申请、退款查询等。而且它还提供了很多常用的支付方法,比如生成支付 URL、生成支付二维码等,是一款非常实用的微信支付 gem。
我们可以通过如下指令在 Ruby 中进行安装:
gem install wechat_pay
下面是通过 wechat_pay 实现的一个简单的功能:生成支付 URL。
require 'wechat_pay'
options = {
partner_id: Rails.application.credentials.dig(:weixin, :partner_id),
partner_key: Rails.application.credentials.dig(:weixin, :partner_key),
appid: Rails.application.credentials.dig(:weixin, :appid),
appsecret: Rails.application.credentials.dig(:weixin, :appsecret),
mch_id: Rails.application.credentials.dig(:weixin, :mch_id), # 商户 ID
notify_url: 'http://wechat.example.com/notify_url'
}
wechat_pay = WechatPay::Client.new(options)
params = {
body: 'XX商品', # 商品描述
out_trade_no: '20191229123456', # 商户订单号
total_fee: 1 # 总金额
}
url = wechat_pay.unified_order_url(params)
puts url
总结:以上是 Ruby 微信开发的几个开源项目的简单介绍及示例,我们可以通过这些 gem 快速地进行微信公众号和微信支付的开发。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Ruby微信开发的几个开源项目介绍 - Python技术站