0

不想有微信回复

微信开发 · say-no · 查看 320 次 · 于 71天前

默认消息不想有任何 重写DefaultResponseMessage()
return new SuccessResponseMessage(); 都不可以报服务号错误
您尚未登陆,请:网站登录 or 微信登陆
共收到 30 条回复
0

Senparc 69天前

不是已经说了:如果你非要直接用 return Content 的话,可以参考一下里面的逻辑:

https://github.com/JeffreySu/WeiXinMPSDK/blob/2ba8c01e7e0fde18aaf0da35ca681e8ae7138faf/src/Senparc.Weixin.MP.MvcExtension/Senparc.Weixin.MP.MvcExtension/Results/FixWeixinBugWeixinResult.cs#L25

0

say-no 69天前

编译不通过,前面不是贴出错误了吗?

0

Senparc 69天前

不行是具体怎么不行?编译出错了,还是运行出错了?

如果你非要直接用 return Content 的话,可以参考一下里面的逻辑:

https://github.com/JeffreySu/WeiXinMPSDK/blob/2ba8c01e7e0fde18aaf0da35ca681e8ae7138faf/src/Senparc.Weixin.MP.MvcExtension/Senparc.Weixin.MP.MvcExtension/Results/FixWeixinBugWeixinResult.cs#L25

0

say-no 71天前

我现在写这个
     return new FixWeixinBugWeixinResult(messageHandler);
不行啊

0

Senparc 71天前

那你 Action 的返回类型就直接写 FixWeixinBugWeixinResult

0

say-no 71天前

我升级到 5.2.7.0也是一样的

0

say-no 71天前

5.2.3.0

0

Senparc 71天前

你的MVC是什么版本?

0

say-no 71天前

这又是什么问题
严重性 代码 说明 项目 文件 行 禁止显示状态
错误 CS0029 无法将类型“Senparc.Weixin.MP.MvcExtension.FixWeixinBugWeixinResult”隐式转换为“System.Web.Mvc.ActionResult” WXAPI F:\项目-2018\WXAPI\WXAPI\Controllers\WXApiTestController.cs 81 活动的

0

say-no 71天前

是最新的啊,老版本没有这个问题

0

Senparc 71天前

那应该是你代码版本没有同步的原因了。如果你非要直接用 return Content 的话,可以参考一下里面的逻辑:

https://github.com/JeffreySu/WeiXinMPSDK/blob/2ba8c01e7e0fde18aaf0da35ca681e8ae7138faf/src/Senparc.Weixin.MP.MvcExtension/Senparc.Weixin.MP.MvcExtension/Results/FixWeixinBugWeixinResult.cs#L25

0

say-no 71天前

好像很多人都遇到了这个问题

0

say-no 71天前

FixWeixinBugWeixinResult(messageHandler); 这个我用不了啊
严重性 代码 说明 项目 文件 行 禁止显示状态
错误 CS7069 对类型“IMessageHandlerDocument”的引用声称该类型是在“Senparc.Weixin”中定义的,但未能找到 WXAPI F:\项目-2018\WXAPI\WXAPI\Controllers\WXApiTestController.cs 81 活动的

0

Senparc 71天前

return 的代码看一下 Demo,应该是类似这样:

           return new FixWeixinBugWeixinResult(messageHandler);

0

say-no 71天前

var messageHandler = new CustomMessageHandler(Request.InputStream, postModel, maxRecordCount);
           messageHandler.OmitRepeatedMessage = true;
           try
           {
               var logPath = Server.MapPath(string.Format("~/App_Data/MP/{0}/", DateTime.Now.ToString("yyyy-MM-dd")));
               if (!Directory.Exists(logPath))
               {
                   Directory.CreateDirectory(logPath);
               }

               //if (messageHandler.RequestMessage.MsgType != RequestMsgType.Event)
               //{
               //    Log.Error("事件名称:", messageHandler.RequestMessage.MsgType.ToString());

               //    //验证不通过或接受信息有错误
               //    return Content("success");
               //}
               //return Content("success");
               messageHandler.SaveRequestMessageLog();
               messageHandler.Execute();
               //return new FixWeixinBugWeixinResult(messageHandler);
               messageHandler.SaveResponseMessageLog();
               //Log.Error("ss", messageHandler.ResponseDocument.ToString());

               return Content(messageHandler.ResponseDocument.ToString());//v0.7-
                                                                          //return new WeixinResult(messageHandler);
                                                                          //return Content(postModel.ToString());  
           }

0

say-no 71天前

为什么回复微信的会这样?
<?xml version="1.0" encoding="utf-8"?>
<xml>
<MsgType><![CDATA[successresponse]]></MsgType>
<ReturnText><![CDATA[success]]></ReturnText>
<ToUserName><![CDATA[]]></ToUserName>
<FromUserName><![CDATA[]]></FromUserName>
<CreateTime>-62135596800</CreateTime>
</xml>

0

Senparc 71天前

应该是Action里面return的代码不对吧,按照SDK DEMO自动生成的不会是这样的XML的。

0

say-no 71天前

默认回复:
<?xml version="1.0" encoding="utf-8"?>
<xml>
 <MsgType><![CDATA[text]]></MsgType>
 <Content><![CDATA[这条消息来自DefaultResponseMessage。]]></Content>
 <ToUserName><![CDATA[o8LhduEPNTPxkARQJBjt353qpPfM]]></ToUserName>
 <FromUserName><![CDATA[gh_a7f4d8551468]]></FromUserName>
 <CreateTime>1546951577</CreateTime>
</xml>
success:
<?xml version="1.0" encoding="utf-8"?>
<xml>
 <MsgType><![CDATA[successresponse]]></MsgType>
 <ReturnText><![CDATA[success]]></ReturnText>
 <ToUserName><![CDATA[]]></ToUserName>
 <FromUserName><![CDATA[]]></FromUserName>
 <CreateTime>-62135596800</CreateTime>
</xml>

0

Senparc 71天前

如果报错,你需要把错误输出到日志里面,拿出来看,不然怎么知道发生了什么呢?

0

say-no 71天前

问题是我的参数二维码关注和扫描参数二维码二维码的消息推送都可以,因为有绑定第三方平台,就是文字消息我不能做响应,需要第三方做处理

0

Senparc 71天前

如果你完全是复制的,就不是代码的问题,是配置或者其他地方的问题。

0

Senparc 71天前

我一条发的问题你还没回答我。

0

say-no 71天前

我就是复制那里的

0

Senparc 71天前

不需要,只是让你看里面的代码。另外确定一下你当前在编辑的用的是同步方法

0

say-no 71天前

我要吧1改成mute吗?

0

Senparc 71天前

你看一下Demo里面的mute关键字的处理方式。

0

say-no 71天前

我就是不想回复任何消息啊,就是要回复微信公众号success,然后不做任何响应

0

Senparc 71天前

你这样就是不会回复任何消息啊,没有给 requestHandler 一个Default,对比一下我们的Demo

0

say-no 71天前

我实在不知道这代码有什么问题

public override IResponseMessageBase OnTextRequest(RequestMessageText requestMessage)
       {
           //说明:实际项目中这里的逻辑可以交给Service处理具体信息,参考OnLocationRequest方法或/Service/LocationSercice.cs
           var defaultResponseMessage = base.CreateResponseMessage<ResponseMessageText>();

           var requestHandler =
               requestMessage.StartHandler()
               .Keyword("1", () => //不回复任何消息
               {
                   //方案一:
                   return new SuccessResponseMessage();

                   //方案二:
                   var muteResponseMessage = base.CreateResponseMessage<ResponseMessageNoResponse>();
                   return muteResponseMessage;

                   //方案三:
                   base.TextResponseMessage = "success";
                   return null;

                   //方案四:
                   return null;//在 Action 中结合使用 return new FixWeixinBugWeixinResult(messageHandler);
               });


           return requestHandler.GetResponseMessage() as IResponseMessageBase;
       }

0

Senparc 71天前

那要去检查你的配置问题了,SDK内部的整套处理机制已经非常成熟了,你可以通过日志输出确定两件事情:
1、开发者服务器收到没有
2、开发者服务器回复没有


热门话题 更多 >>

不想有微信回复

say-no 30 个回复 • 查看 320 次 • 69天前

不能升级StackExchange.Redis?

z569251516 24 个回复 • 查看 597 次 • 77天前

GetWxaCodeUnlimit 生成1KB文件

a124754649 20 个回复 • 查看 309 次 • 69天前

源服务器配置错误?

wolfzhangyong 13 个回复 • 查看 527 次 • 80天前

推送素材失败

dmi680 10 个回复 • 查看 152 次 • 52天前

微信硬件平台图片接收问题

shinenet 7 个回复 • 查看 558 次 • 117天前

菜单推送失败,请问怎么解

wuyubing 7 个回复 • 查看 215 次 • 71天前

ExecuteAsync异步消息

我喜欢我拼命地样子 7 个回复 • 查看 240 次 • 76天前

微信公众号模板消息推送

banana 5 个回复 • 查看 287 次 • 64天前

微信支付服务商平台开发

guaicaiboshi 4 个回复 • 查看 705 次 • 176天前

升级到最新版的sdk出错

Cristym 4 个回复 • 查看 367 次 • 119天前

当前扩展缓存策略没有进行注册

知心理,悦生活 4 个回复 • 查看 682 次 • 90天前

C# 的 List<> 的一个技巧问题

sccmclub 4 个回复 • 查看 205 次 • 40天前

自定义菜单打开网页代码怎么写

sccmclub 3 个回复 • 查看 197 次 • 77天前

QQ群
  • 1群:300313885 (2000人群 已满)
  • 2群:293958349 (1000人群 已满)
  • 3群:342319110 (2000人群 已满)
  • 4群:372212092 (500人群 已满)
  • 5群:377815480 (1000人群 已满)
  • 6群:425898825 (1000人群 已满)
  • 7群:482942254 (500人群 已满)
  • 8群:106230270 (500人群 已满)
  • 9群:539061281 (500人群 已满)
  • 10群(分布式缓存):246860933 Senparc.Weixin.Cache SDK 10群
  • 11群:553198593 (500人群 已满)
  • 12群(微信小程序):108830388 Senparc微信小程序 12群
  • 13群(开放平台):183424136 (500人群 已满)
  • 14群(视频学员):588231256 Senparc.Weixin SDK 14群
  • 15群(公众号/综合):289181996 Senparc.Weixin SDK 15群
  • 16群(开放平台):860626938 [16群 开放平台]SenparcSDK
  • NeuChar 技术交流群:618605800 NeuChar 开发交流群
  • SCF 技术交流群:147054579 SCF 开发交流群
微信开发宝典:《微信开发深度解析》

由 Senparc.Weixin SDK 作者耗时两年完成的微信开发图书《微信开发深度解析:公众号、小程序高效开发秘籍》已经出版!

历经2年精心雕琢,难得的“理论 + 实战案例 + 趟坑经验”总结,
从需求分析、策划,到账号申请、验证,再到全面的 API 及开发工具,
覆盖所有开发微信公众号(含订阅号、服务号和小程序)所需关键技能!

视频教程:《微信公众号+小程序快速开发》

由盛派课堂(盛派旗下独立教育品牌)制作,《微信开发深度解析》作者苏震巍先生主讲的《微信公众号+小程序快速开发》视频课程开课啦!

课程采用“理论+实战”的教学形式,结合部分《微信开发深度解析》内容,独立于书本,包含了更多的操作演示和案例展示,帮助大家从多个维度学习微信开发以及.NET开发过程中的诸多技巧。
课程包含两大部分:
1. 微信开发基础技能
2. 公众号及小程序案例实战
共计60课时,配有番外篇,目前视频已在网易云课堂上线。