我的编程语言是c#,V3没有.net官方代码,所以只能用v2的官方.net代码接收回调信息:
public string GetNotifyData()
{
new Unisoft.WebModules.Accounts.Business.Message().InsertTestMessage("enter GetNotifyData()");
System.IO.Stream s = page.Request.InputStream;
int count = 0;
byte[] buffer = new byte[1024];
StringBuilder builder = new StringBuilder();
while ((count = s.Read(buffer, 0, 1024)) > 0)
{
builder.Append(Encoding.UTF8.GetString(buffer, 0, count));
}
log.Info(count.ToString())//结果这个count=0
s.Flush();
s.Close();
s.Dispose();
var str = Encoding.UTF8.GetString(buffer);
}
结果是程序确实是收到了信息,new Unisoft.WebModules.Accounts.Business.Message().InsertTestMessage("enter GetNotifyData()");这句就是看看程序是否执行了,结果确实收到了"enter GetNotifyData()"的提示,
但是count始终为0, str 中没有信息。请问这个问题该怎么解决?
回调地址必须是https,我用的还是http,因为微信在设置回调地址的时候,是可以选择http,我为了贪方便就直接用http,可能是这个原因。