国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

??
2. ??? ?? ?? ??
3. ?? ??? ?? ???
4、微信小店貨架管理的接口測(cè)試
? ?? ??? ?? ?? C# WeChat ?? ?? ? WeChat ?? ??? ?? ?? ??

C# WeChat ?? ?? ? WeChat ?? ??? ?? ?? ??

Mar 01, 2017 am 10:43 AM

1. ?? ?? ??? ??

?? ?? ?? ??????? ??? ??? ??? ? ???, ?????? ??? ????. ??? ??? ???? ?????? ??? ???? ????. ??? ? ??? ???? ???? ??? ??? ??? ?? ??? ?? ??? URL? ??? ? ????.

C# WeChat ?? ?? ? WeChat ?? ??? ?? ?? ??

??, ??? ????? ?? ??? ?????? ???? ??? ?????. ?? ???? ???? ??? ??? ??? ? ??? ?? ??? ?????? ?????. ??? ?? ????.

C# WeChat ?? ?? ? WeChat ?? ??? ?? ?? ??

2. ??? ?? ?? ??

WeChat? ??? ?? ?? ?????? API? ??? WeChat ?? ??? ?? ???, ?? ??? ???? ??? ?? ??? ??? ????.

C# WeChat ?? ?? ? WeChat ?? ??? ?? ?? ??

?? ?? ??? ??? ???? ?? ??? ?? ????? Json ???? ???? ??? ??? ???? ?? ???? ??? ?????. ????? ???? ??????. ??? ??? ??? ????? ????.

WeChat ?? ?? ?????? ?? ???? ?????. ??? ?? ???? 5?? ?? ??? ???? ??? ? ? ??? ???? ??? ? ????.

C# WeChat ?? ?? ? WeChat ?? ??? ?? ?? ??

??? ?? ??? ?? ?????.

C# WeChat ?? ?? ? WeChat ?? ??? ?? ?? ??C# WeChat ?? ?? ? WeChat ?? ??? ?? ?? ??

C# WeChat ?? ?? ? WeChat ?? ??? ?? ?? ??C# WeChat ?? ?? ? WeChat ?? ??? ?? ?? ??

C# WeChat ?? ?? ? WeChat ?? ??? ?? ?? ??

?? 5?? ?? ??? ?? ?? ?? ???? ??? ???? ??? ???? ??? ? ????.

3. ?? ??? ?? ???

WeChat ???? ????? ??? ??? ??? ?? ??? ?? ??? ?? ??? ??? ?? ???? ?????.

C# WeChat ?? ?? ? WeChat ?? ??? ?? ?? ??

WeChat ???? API ??? ???? ?? ?? JSON ???? ?? ????? ?? ? ? ???, ???? ??? ??? ????.

{
    "shelf_data": {
      "module_infos": [
        {
          "group_info": {
            "filter": {
              "count": 2
            },
            "group_id": 50
          },
          "eid": 1
        },
        {
            "group_infos": {
                "groups": [
                  {
                    "group_id": 49
                  },
                  {
                    "group_id": 50
                  },
                  {
                    "group_id": 51
                  }
                ]
          },
          "eid": 2
        },
        {
          "group_info": {
            "group_id": 52,
            "img": "http://mmbiz.qpic.cn/mmbiz/4whpV1VZl29nqqObBwFwnIX3licVPnFV5Jm64z4I0TTicv0TjN7Vl9bykUUibYKIOjicAwIt6Oy0Y6a1Rjp5Tos8tg/0"
          },
          "eid": 3
        },
        {
          "group_infos": {  
            "groups": [
              {
                "group_id": 49,
                "img": "http://mmbiz.qpic.cn/mmbiz/4whpV1VZl29nqqObBwFwnIX3licVPnFV5uUQx7TLx4tB9qZfbe3JmqR4NkkEmpb5LUWoXF1ek9nga0IkeSSFZ8g/0"
              },
              {
                "group_id": 50,
                "img": "http://mmbiz.qpic.cn/mmbiz/4whpV1VZl29nqqObBwFwnIX3licVPnFV5G1kdy3ViblHrR54gbCmbiaMnl5HpLGm5JFeENyO9FEZAy6mPypEpLibLA/0"
              },
              {
                "group_id": 52,
                "img": "http://mmbiz.qpic.cn/mmbiz/4whpV1VZl29nqqObBwFwnIX3licVPnFV5uUQx7TLx4tB9qZfbe3JmqR4NkkEmpb5LUWoXF1ek9nga0IkeSSFZ8g/0"
              }
            ]
          },
          "eid": 4
        }, 
        {
          "group_infos": {
            "groups": [
              {
                "group_id": 43
              },
              {
                "group_id": 44
              },
              {
                "group_id": 45
              },
              {
                "group_id": 46
              }
            ],
            "img_background": "http://mmbiz.qpic.cn/mmbiz/4whpV1VZl29nqqObBwFwnIX3licVPnFV5uUQx7TLx4tB9qZfbe3JmqR4NkkEmpb5LUWoXF1ek9nga0IkeSSFZ8g/0"
          },
          "eid": 5
        }
      ]
    }, 
    "shelf_banner": "http://mmbiz.qpic.cn/mmbiz/4whpV1VZl2ibrWQn8zWFUh1YznsMV0XEiavFfLzDWYyvQOBBszXlMaiabGWzz5B2KhNn2IDemHa3iarmCyribYlZYyw/0", 
    "shelf_name": "測(cè)試貨架"
}

JSON ??? ??? ???? ?? ?? ?? ??? ??????.

C# WeChat ?? ?? ? WeChat ?? ??? ?? ?? ??

JSON ???? ???? ??? ??? ???? ? ???, ??? ??? ???? ??? ?? ?? ?????? ??? ??? ? ????. ????? ??? ??? ????.

???

有了這些接口的定義,我們就需要實(shí)現(xiàn)對(duì)應(yīng)的接口,從而實(shí)現(xiàn)我們向微信API的封裝處理了。

微信小店的貨架管理實(shí)現(xiàn)內(nèi)容如下所示(部分內(nèi)容,增刪改)。

/// <summary>
        /// 增加貨架
        /// </summary>
        /// <param name="accessToken">調(diào)用接口憑證</param>
        /// <param name="shelfBanner">貨架招牌圖片Url</param>
        /// <param name="shelfName">貨架名稱</param>
        /// <param name="controls">貨架控件1,2,3,4,5類型的集合</param>
        /// <returns></returns>
        public AddShelfResult AddShelf(string accessToken, string shelfBanner, string shelfName, List<ShelfControlBase> controls)
        {
            var url = string.Format("https://api.weixin.qq.com/merchant/shelf/add?access_token={0}", accessToken);
            var data = new
            {
                shelf_data = new
                {
                    module_infos = controls
                },
                shelf_banner = shelfBanner,
                shelf_name = shelfName
            };

            string postData = data.ToJson();
            return JsonHelper<AddShelfResult>.ConvertJson(url, postData);
        }

        /// <summary>
        /// 刪除貨架
        /// </summary>
        /// <param name="accessToken">調(diào)用接口憑證</param>
        /// <param name="shelfId">貨架Id</param>
        /// <returns></returns>
        public CommonResult DeleteShelf(string accessToken, int shelfId)
        {
            var url = string.Format("https://api.weixin.qq.com/merchant/shelf/del?access_token={0}", accessToken);
            var data = new
            {
                shelf_id = shelfId
            };
            string postData = data.ToJson();

            return Helper.GetExecuteResult(url, postData);
        }

        /// <summary>
        /// 修改貨架
        /// </summary>
        /// <param name="accessToken">調(diào)用接口憑證</param>
        /// <param name="shelfId">貨架Id</param>
        /// <param name="shelfBanner">貨架招牌圖片Url</param>
        /// <param name="shelfName">貨架名稱</param>
        /// <param name="controls">貨架控件1,2,3,4,5類型的集合</param>
        /// <returns></returns>
        public CommonResult UpdateShelf(string accessToken, int shelfId, string shelfBanner, string shelfName, List<ShelfControlBase> controls)
        {
            var url = string.Format("https://api.weixin.qq.com/merchant/shelf/mod?access_token={0}", accessToken);
            var data = new
            {
                shelf_id = shelfId,
                shelf_data = new
                {
                    module_infos = controls
                },
                shelf_banner = shelfBanner,
                shelf_name = shelfName
            };
            string postData = data.ToJson();

            return Helper.GetExecuteResult(url, postData);
        }

4、微信小店貨架管理的接口測(cè)試

由于貨架管理的對(duì)象和接口定義比較復(fù)雜一些,一定需要進(jìn)行反復(fù)的測(cè)試才能正式使用,如果不注意有可能你定義的實(shí)體類,獲取不到某個(gè)字段信息。

我為了方便,創(chuàng)建了一個(gè)Winform項(xiàng)目,分別對(duì)各個(gè)接口進(jìn)行測(cè)試。

C# WeChat ?? ?? ? WeChat ?? ??? ?? ?? ??

對(duì)于貨架管理內(nèi)容的接口測(cè)試,測(cè)試代碼如下所示。

private void btnShelf_Click(object sender, EventArgs e)
        {
            IMerchantApi api = new MerchantApi();
            List<ShelfJson> list = api.GetAllShelf(token);
            Console.WriteLine(list.ToJson());

            foreach(ShelfJson json in list)
            {
                Console.WriteLine("貨架信息:");
                ShelfJson getJson = api.GetShelfById(token, json.shelf_id.Value);
                Console.WriteLine(getJson.ToJson());
            }

            string shelf_banner = "http://mmbiz.qpic.cn/mmbiz/mLqH9gr11Gyb2sgiaelcsxYtQENGePp0RgeNlAQicfZQokjbJMUq4h8MHtjpekJNEWKuMN3gdRz5RxfkYb7NlIrw/0";
            string shelf_name = "測(cè)試貨架";
            ShelfControl1 c11 = new ShelfControl1(6, 202797386);            
            ShelfControl1 c12 = new ShelfControl1(4, 202797397);
            List<ShelfControlBase> controlList = new List<ShelfControlBase>(){c11, c12};
            AddShelfResult result = api.AddShelf(token, shelf_banner, shelf_name, controlList);
            if (result != null && result.shelf_id > 0)
            {
                Console.WriteLine("增加的貨架信息:");
                ShelfJson getJson = api.GetShelfById(token, result.shelf_id);
                Console.WriteLine(getJson.ToJson());

                shelf_name = "測(cè)試貨架-修改";
                controlList = new List<ShelfControlBase>(){c11};
                CommonResult updateReuslt = api.UpdateShelf(token, result.shelf_id, shelf_banner, shelf_name, controlList);
                Console.WriteLine("修改貨架操作:{0}", updateReuslt.Success ? "成功" : "失敗");

                CommonResult deleteResult = api.DeleteShelf(token, result.shelf_id);
                Console.WriteLine("刪除貨架操作:{0}", deleteResult.Success ? "成功" : "失敗");
            }
        }

C# WeChat ?? ?? ? WeChat ?? ??? ?? ?? ??

?

更多C# WeChat ?? ?? ? WeChat ?? ??? ?? ?? ??相關(guān)文章請(qǐng)關(guān)注PHP中文網(wǎng)!

? ????? ??
? ?? ??? ????? ???? ??? ??????, ???? ?????? ????. ? ???? ?? ???? ?? ??? ?? ????. ???? ??? ???? ???? ??? ?? admin@php.cn?? ?????.

? AI ??

Undresser.AI Undress

Undresser.AI Undress

???? ?? ??? ??? ?? AI ?? ?

AI Clothes Remover

AI Clothes Remover

???? ?? ???? ??? AI ?????.

Video Face Swap

Video Face Swap

??? ??? AI ?? ?? ??? ???? ?? ???? ??? ?? ????!

???

??? ??

???++7.3.1

???++7.3.1

???? ?? ?? ?? ???

SublimeText3 ??? ??

SublimeText3 ??? ??

??? ??, ???? ?? ????.

???? 13.0.1 ???

???? 13.0.1 ???

??? PHP ?? ?? ??

???? CS6

???? CS6

??? ? ?? ??

SublimeText3 Mac ??

SublimeText3 Mac ??

? ??? ?? ?? ?????(SublimeText3)

???

??? ??

??? ????
1601
29
PHP ????
1502
276
???