Class: Pddapi::Pinduoduo
- Inherits:
-
Object
- Object
- Pddapi::Pinduoduo
- Includes:
- Pddapi
- Defined in:
- lib/pddapi/api_pinduoduo.rb
Constant Summary
Constants included from Pddapi
Instance Method Summary collapse
- #pdd_ddk_act_prom_url_generate(pid, client_id, secret) ⇒ Object
- #pdd_ddk_cms_prom_url_generate(pid, multi_group, client_id, secret) ⇒ Object
- #pdd_ddk_goods_detail(goods_id, client_id, secret) ⇒ Object
- #pdd_ddk_goods_promotion_url_generate(pid, goods_id, multi_group, client_id, secret) ⇒ Object
- #pdd_ddk_goods_search(keyword, client_id, secret, sort_type = 0, with_coupon = true, page = 1, page_size = 20) ⇒ Object
- #pdd_ddk_rp_prom_url_generate(pid, client_id, secret) ⇒ Object
- #pdd_ddk_theme_goods_search(theme_id, client_id, secret) ⇒ Object
- #pdd_ddk_theme_list_get(client_id, secret, page = 1, page_size = 20) ⇒ Object
- #pdd_ddk_theme_prom_url_generate(theme_id_list, pid, client_id, secret) ⇒ Object
- #post_data(uri, params) ⇒ Object
Methods included from Pddapi
#action_params, #get_sign, #system_params
Instance Method Details
#pdd_ddk_act_prom_url_generate(pid, client_id, secret) ⇒ Object
54 55 56 57 58 59 60 61 62 63 64 |
# File 'lib/pddapi/api_pinduoduo.rb', line 54 def pdd_ddk_act_prom_url_generate(pid, client_id, secret) action_params = { url_type: 1, generate_short_url: true, generate_mobile_short_url: true, p_id_list: [pid].to_json } params = system_params('pdd.ddk.act.prom.url.generate', client_id).merge(action_params) my_sign = get_sign(params, secret).upcase post_data(URI(PDDURI), params.merge({sign: my_sign})) end |
#pdd_ddk_cms_prom_url_generate(pid, multi_group, client_id, secret) ⇒ Object
76 77 78 79 80 81 82 83 84 85 86 |
# File 'lib/pddapi/api_pinduoduo.rb', line 76 def pdd_ddk_cms_prom_url_generate(pid, multi_group, client_id, secret) action_params = { p_id_list: [pid].to_json, generate_short_url: true, generate_mobile: true, multi_group: multi_group } params = system_params('pdd.ddk.cms.prom.url.generate', client_id).merge(action_params) my_sign = get_sign(params, secret).upcase post_data(URI(PDDURI), params.merge({sign: my_sign})) end |
#pdd_ddk_goods_detail(goods_id, client_id, secret) ⇒ Object
33 34 35 36 37 38 39 40 |
# File 'lib/pddapi/api_pinduoduo.rb', line 33 def pdd_ddk_goods_detail(goods_id, client_id, secret) action_params = { goods_id_list: "[#{goods_id}]" } params = system_params('pdd.ddk.goods.detail', client_id).merge(action_params) my_sign = get_sign(params, secret).upcase post_data(URI(PDDURI), params.merge({sign: my_sign})) end |
#pdd_ddk_goods_promotion_url_generate(pid, goods_id, multi_group, client_id, secret) ⇒ Object
42 43 44 45 46 47 48 49 50 51 52 |
# File 'lib/pddapi/api_pinduoduo.rb', line 42 def pdd_ddk_goods_promotion_url_generate(pid, goods_id, multi_group, client_id, secret) action_params = { p_id: pid, goods_id_list: "[#{goods_id}]", generate_short_url: true, multi_group: multi_group } params = system_params('pdd.ddk.goods.promotion.url.generate', client_id).merge(action_params) my_sign = get_sign(params, secret).upcase post_data(URI(PDDURI), params.merge({sign: my_sign})) end |
#pdd_ddk_goods_search(keyword, client_id, secret, sort_type = 0, with_coupon = true, page = 1, page_size = 20) ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/pddapi/api_pinduoduo.rb', line 20 def pdd_ddk_goods_search(keyword, client_id, secret, sort_type = 0, with_coupon = true, page = 1, page_size = 20) action_params = { keyword: keyword, sort_type: sort_type, with_coupon: with_coupon, page: page, page_size: page_size } params = system_params('pdd.ddk.goods.search', client_id).merge(action_params) my_sign = get_sign(params, secret).upcase post_data(URI(PDDURI), params.merge({sign: my_sign})) end |
#pdd_ddk_rp_prom_url_generate(pid, client_id, secret) ⇒ Object
66 67 68 69 70 71 72 73 74 |
# File 'lib/pddapi/api_pinduoduo.rb', line 66 def pdd_ddk_rp_prom_url_generate(pid, client_id, secret) action_params = { generate_short_url: true, p_id_list: [pid].to_json } params = system_params('pdd.ddk.rp.prom.url.generate', client_id).merge(action_params) my_sign = get_sign(params, secret).upcase post_data(URI(PDDURI), params.merge({sign: my_sign})) end |
#pdd_ddk_theme_goods_search(theme_id, client_id, secret) ⇒ Object
98 99 100 101 102 103 104 105 |
# File 'lib/pddapi/api_pinduoduo.rb', line 98 def pdd_ddk_theme_goods_search(theme_id, client_id, secret) action_params = { theme_id: theme_id } params = system_params('pdd.ddk.theme.goods.search', client_id).merge(action_params) my_sign = get_sign(params, secret).upcase post_data(URI(PDDURI), params.merge({sign: my_sign})) end |
#pdd_ddk_theme_list_get(client_id, secret, page = 1, page_size = 20) ⇒ Object
88 89 90 91 92 93 94 95 96 |
# File 'lib/pddapi/api_pinduoduo.rb', line 88 def pdd_ddk_theme_list_get(client_id, secret, page = 1,page_size = 20) action_params = { page: page, page_size: page_size } params = system_params('pdd.ddk.theme.list.get', client_id).merge(action_params) my_sign = get_sign(params, secret).upcase post_data(URI(PDDURI), params.merge({sign: my_sign})) end |
#pdd_ddk_theme_prom_url_generate(theme_id_list, pid, client_id, secret) ⇒ Object
107 108 109 110 111 112 113 114 115 116 117 |
# File 'lib/pddapi/api_pinduoduo.rb', line 107 def pdd_ddk_theme_prom_url_generate(theme_id_list, pid, client_id, secret) action_params = { pid: pid, theme_id_list: theme_id_list, generate_short_url: true, generate_mobile: true } params = system_params('pdd.ddk.theme.prom.url.generate', client_id).merge(action_params) my_sign = get_sign(params, secret).upcase post_data(URI(PDDURI), params.merge({sign: my_sign})) end |
#post_data(uri, params) ⇒ Object
5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
# File 'lib/pddapi/api_pinduoduo.rb', line 5 def post_data(uri, params) req = Net::HTTP::Post.new(uri) req.set_form_data(params) res = Net::HTTP.start(uri.hostname, uri.port) do |http| http.request(req) end case res when Net::HTTPSuccess return res.body else return "{\"status\": 0}" end end |