开发者社区> 问答> 正文

.net钉钉发送企业消息返回40035不合法的参数

.net 钉钉发送企业消息返回 40035 不合法的参数
post的json字符串:"{\"touser\":\"1001|1002\",\"agentid\":\"5199109\",\"msgtype\":\"text\",\"text\":{\"content\":\"来至钉钉测试\"}}"
{"errcode":40035,"errmsg":"不合法的参数"}
以下两个方法都不行,都返回同样的错误。
通过 debug.dingtalk.com可以测试成功,json字符串和上面一样 {"touser":"1001|1002","agentid":"5199109","msgtype":"text","text":{"content":"来至钉钉测试"}}
方法内容:
一:
public static string SendRequest(string url, string body, Encoding encode)
        {
            WebClient wc = new WebClient();
            //Encoding enc = Encoding.UTF8;
            wc.Headers["Content-Type"] = "application/json; charset=utf-8";
            return encode.GetString(wc.UploadData(new Uri(url), "POST", encode.GetBytes(body)));
        }
二:
public string PostWebRequest(string postUrl, string paramData, Encoding dataEncode)
        {
            string ret = string.Empty;
            try
            {
                byte[] byteArray = dataEncode.GetBytes(paramData); //转化
                HttpWebRequest webReq = (HttpWebRequest)WebRequest.Create(new Uri(postUrl));
                webReq.Method = "POST";
                webReq.ContentType = "application/json; charset=utf-8";

                webReq.ContentLength = byteArray.Length;
                Stream newStream = webReq.GetRequestStream();
                newStream.Write(byteArray, 0, byteArray.Length);//写入参数
                newStream.Close();
                HttpWebResponse response = (HttpWebResponse)webReq.GetResponse();
                StreamReader sr = new StreamReader(response.GetResponseStream(), dataEncode);
                ret = sr.ReadToEnd();
                sr.Close();
                response.Close();
                newStream.Close();
            }
            catch (Exception ex)
            {
                return ex.Message;
            }
            return ret;
        }
求救高人指点下。

展开
收起
qicmsg 2015-09-28 10:45:42 17128 0
5 条回答
写回答
取消 提交回答
  • 回 楼主qicmsg的帖子
    您是怎么解决的,我也遇到了,搞了几天了,求助

    -------------------------

    回 1楼赵挺的帖子
    您是怎么解决的,我也遇到了,搞了几天了,求助
    2018-01-23 15:52:21
    赞同 展开评论 打赏
  • Renet钉钉发送企业消息返回40035不合法的参数
    我是直接curl的,发现怎么测试都不行,后来做了一些调试,才发现应该这样写:
    curl -H "Content-type: application/json" -X POST -d '{"msgtype": "text","text": {"content": "我就是我, 是不一样的烟火"}, "at": {"atMobiles": ["1560671****"], "isAtAll": false}}' htps://oapi.dingtalk.com/robot/send?access_token=*************
    2018-01-22 15:46:45
    赞同 展开评论 打赏
  • Renet钉钉发送企业消息返回40035不合法的参数
    楼主问题解决了没,遇到同样问题,求官方帮助
    2016-01-07 23:12:43
    赞同 展开评论 打赏
  • Renet钉钉发送企业消息返回40035不合法的参数
    我也出现了这种情况。也是不能提交。一直提示{"errcode":40035,"errmsg":"不合法的参数"}
    2015-10-21 12:49:17
    赞同 展开评论 打赏
  • Renet钉钉发送企业消息返回40035不合法的参数
    您好,这个错误是因为未正确提交json,请确保正确的post了json数据。
    从参数上看,{"touser":"1001|1002","agentid":"5199109","msgtype":"text","text":{"content":"来至钉钉测试"}},这个是满足参数要求的。
    另外,您也可以提供下做这个测试的时间点。
    2015-09-28 11:33:00
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
钉钉小程序——为工作方式插上翅膀 立即下载
钉钉客户端自动化的应用 立即下载
使命必达 —— 钉钉企业级 消息服务的机遇与挑战 立即下载