微信一次性订阅消息

照着微信一次性订阅消息的文档开发,在发送一次性订阅消息时遇到了问题:

发送一次性订阅消息:

http请求方式: post
https://api.weixin.qq.com/cgi-bin/message/template/subscribe?access_token=ACCESS_TOKEN

报错信息:

{
     errcode : 41001,
     errmsg : access_token missing hint: [Um.fPA0334vr45!]
     }
     */

    /*
     {
     errcode : 47001,
     errmsg : data format error hint: [CJxiwA0142ge31]
     }

使用工程中已存在的自己根据我们后台的接口封装的网络工具类一直报错,再次确认文档,看不出什么毛病。然后网上大概搜了下 总结为发送的数据格式必须为json格式(application/json),封装的网络工具类是如此的,能看到的文档并不多,因为现有的网络工具类中对入参、出参是有加解密操作的,后来干脆自己对微信一次性订阅消息单独写了个网络工具类:

AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
manager.responseSerializer = [AFHTTPResponseSerializer serializer];
manager.requestSerializer = [AFJSONRequestSerializer serializer];
[manager.requestSerializer setValue:@"application/json;charset=utf-8" forHTTPHeaderField:@"Content-Type"];
manager.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"application/json", @"text/json", @"text/javascript", @"text/html",@"image/jpeg",@"text/plain", nil];

然后请求方式为post,url需是https://api.weixin.qq.com/cgi-bin/message/template/subscribe?access_token=ACCESS_TOKEN(微信access_token需拼接上去),给入参时仍需要将access_token带上去,至此微信一次性订阅消息调用成功。

你可能感兴趣的:(微信一次性订阅消息)