以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助] 公众号微信收不到信息  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=157246)

--  作者:machle
--  发布时间:2020/10/9 17:01:00
--  [求助] 公众号微信收不到信息
已经接入http服务,更换了appid和secret,能够get到access token,直接用的接收消息的代码,但是手机微信给公众号发消息,收不到。请问问题可能出在哪里?
--  作者:有点蓝
--  发布时间:2020/10/9 17:10:00
--  
怎么收的?写了什么代码?
--  作者:machle
--  发布时间:2020/10/9 17:19:00
--  回复:(有点蓝)怎么收的?写了什么代码?
帮助文件里的代码
Select Case e.path
    Case "wefox"
        If e.Request.HttpMethod = "GET"
            If Functions.Execute("VerifySignature",e) Then
                e.WriteString(e.GetValues("echostr"))
            End If
        ElseIf e.Request.HttpMethod = "Post"
            Dim xo As Foxtable.XObject = Foxtable.XObject.Parse(e.PlainText)
            Dim st As New Date(1970,1,1,8,0,0)
            Select Case xo("MsgType")
                Case "text","image","voice","video","shortvideo" \'为了简单,这里只保存文本?图片?语音和视频消息.
                    If DataTables("Message").Find("MsgID = \'" & xo("MsgId").ToString() & "\'") IsNot  Nothing Then \'如果有相同MsgID的信息直接返回
                        Return
                    End If               
              

--  作者:machle
--  发布时间:2020/10/9 17:19:00
--  回复:(machle)回复:(有点蓝)怎么收的?写了什么...
  Dim dr As DataRow = DataTables("Message").AddNew()
                    dr("FromUserName") = xo("FromUserName")
                    dr("CreateTime") = st.AddSeconds(xo("CreateTime"))
                    dr("MsgType") = xo("MsgType")
                    dr("MsgId") = xo("MsgId")
                    dr("Format") = xo("Format")
                    dr("MediaId") = xo("MediaId")
                    dr("PicUrl") = xo("PicUrl")
                    dr("ThumbMediaId") = xo("ThumbMediaId")
                    dr("Content") = xo("Content")
                    dr("AgentID") = xo("AgentID")
                    dr("Recognition") = xo("Recognition")
                    dr.Save()
                    
            End Select
        End If
End Select

--  作者:有点蓝
--  发布时间:2020/10/9 17:24:00
--  
调试技巧:http://www.foxtable.com/webhelp/scr/1485.htm

msgbox(e.path)
Select Case e.path
    Case "wefox"
        If e.Request.HttpMethod = "GET"
            If Functions.Execute("VerifySignature",e) Then
                e.WriteString(e.GetValues("echostr"))
            End If
        ElseIf e.Request.HttpMethod = "Post"
msgbox(e.PlainText)
            Dim xo As Foxtable.XObject = Foxtable.XObject.Parse(e.PlainText)
            Dim st As New Date(1970,1,1,8,0,0)
msgbox(xo("MsgType").ToString())
            Select Case xo("MsgType")
                Case "text","image","voice","video","shortvideo" \'为了简单,这里只保存文本?图片?语音和视频消息.
msgbox(xo("MsgId").ToString())
                    If DataTables("Message").Find("MsgID = \'" & xo("MsgId").ToString() & "\'") IsNot  Nothing Then \'如果有相同MsgID的信息直接返回
                        Return
                    End If         
msgbox(1)
Dim dr As DataRow = DataTables("Message").AddNew()

--  作者:machle
--  发布时间:2020/10/9 17:30:00
--  回复:(有点蓝)调试技巧:http://www.foxtable.com/...
请问: 我用的阿里云的服务器,在自己电脑上没法调试吧?这个要调试的话,是不是每次都得发布项目,然后FTP远程升级,再测试?有没有简便方法?
--  作者:有点蓝
--  发布时间:2020/10/9 17:34:00
--  
没有,只能发布后上传到阿里云测试
--  作者:machle
--  发布时间:2020/10/9 17:44:00
--  回复:(有点蓝)没有,只能发布后上传到阿里云测试
您好,httprequest好像不起作用。我把您的代码粘到里面去,手机发信息,不起作用呢?messagebox也不弹出,怎么回事?
--  作者:machle
--  发布时间:2020/10/9 23:52:00
--  回复:(有点蓝)没有,只能发布后上传到阿里云测试
messagebox.show(xo("MsgType").ToString())   报错 未将对象引用设置到对象的实例

若是messagebox.show(xo("MsgType")),给出的xo("MsgType")值是空值,这样无法把消息记录在表格里。

--  作者:有点蓝
--  发布时间:2020/10/10 8:59:00
--  
msgbox(e.PlainText)弹出什么内容?