Push notification 连接到google云消息云连接服务器时发生身份验证错误
我不熟悉gcm上游消息传递。我正在尝试通过xmpp(使用c#agsxmpp库)连接到云连接服务器。但是,我从服务器收到一条未授权的错误消息,并且连接立即关闭,即使相同的项目号/api密钥适用于http下游推送通知。感谢您的帮助 这是代码Push notification 连接到google云消息云连接服务器时发生身份验证错误,push-notification,google-cloud-messaging,xmpp,agsxmpp,Push Notification,Google Cloud Messaging,Xmpp,Agsxmpp,我不熟悉gcm上游消息传递。我正在尝试通过xmpp(使用c#agsxmpp库)连接到云连接服务器。但是,我从服务器收到一条未授权的错误消息,并且连接立即关闭,即使相同的项目号/api密钥适用于http下游推送通知。感谢您的帮助 这是代码 var username = Configuration.PROJECT_NUMBER + "@" + Configuration.GCM_SERVER; xmpp = new XmppClientConnection
var username = Configuration.PROJECT_NUMBER + "@" + Configuration.GCM_SERVER;
xmpp = new XmppClientConnection
{
UseSSL = true,
UseStartTLS = false,
Server = Configuration.GCM_SERVER,
ConnectServer = Configuration.GCM_SERVER,
Port = Configuration.GCM_PORT,
Username = username,
Password = Configuration.GCM_API_KEY,
AutoResolveConnectServer = true,
SocketConnectionType = SocketConnectionType.Direct,
AutoAgents = false,
KeepAlive = true,
AutoRoster = false,
AutoPresence = false,
UseCompression = false,
Show = ShowType.chat
};
xmpp.OnReadSocketData += Xmpp_OnReadSocketData;
xmpp.OnWriteSocketData += Xmpp_OnWriteSocketData;
xmpp.OnLogin += Xmpp_OnLogin;
xmpp.OnMessage += Xmpp_OnMessage;
xmpp.OnError += Xmpp_OnError;
xmpp.OnClose += Xmpp_OnClose;
xmpp.OnAuthError += Xmpp_OnAuthError;
xmpp.Open();
}
这是与ccs的交互(从OnReadSocketData和OnWriteSocketData事件捕获)
至CCS 11:59:59 037
来自CSS>>11:59:59 101
X-OAUTH2X-GOOGLE-TOKENPLAIN
至CCS 11:59:59 312
ism>X-OAUTH2X-GOOGLE-TOKENPLAIN
来自CSS>>11:59:59 314
urn:ietf:params:xml:ns:xmpp-sasl“>ism>X-OAUTH2X-GOOGLE-TOKENPLAIN
我将用户名从@
更改为只
,并且它正在工作。你说你刚刚使用GCM上游消息传递,我是否正确地假设你用它实现的只是为了尝试一下?你正在使用GCM prepod.googleapis.com:5236
端口,诸如此类的东西?只是想验证是否Configuration.PROJECT\u NUMBER
=
?干杯。发现了这一点。几乎没有区别:用于实现的语言,根据我之前的评论,他使用的是gcm prepod.googleapis.com
。我继续问他是否能够找到导致他这方面错误的原因。但我不知道这是否有用。让我们继续吧谢谢你的帮助,我用了@作为用户名,我把它改成了用户名,现在就可以用了。太好了。D你应该把它作为一个答案贴上正确的标签。这样社区和未来可能的用户就可以看到它了。:)也许有一天会帮助别人。干杯!啊,说得好。
To CCS<<11:59:58 834
<stream:stream to='gcm.googleapis.com' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams' version='1.0' xml:lang='en'>
From CSS>> 11:59:59 037
<stream:stream from="gcm.googleapis.com" id="AF8BBDE576QWEFF3543" version="1.0" xmlns:stream="http://etherx.jabber.org/streams" xmlns="jabber:client">
From CSS>> 11:59:59 101
<stream:features><mechanisms xmlns="urn:ietf:params:xml:ns:xmpp-sasl"><mechanism>X-OAUTH2</mechanism><mechanism>X-GOOGLE-TOKEN</mechanism><mechanism>PLAIN</mechanism></mechanisms></stream:features>
To CCS<<11:59:59 115
<auth xmlns="urn:ietf:params:xml:ns:xmpp-sasl" mechanism="PLAIN">ADIwNjAxOTEwOTA2Mlw0MGjkdf4y67fvbjjdgESnhaa2tFX3hIcm56NXhWZndJclpFUmlMbnBqNVFIdkk=</auth>
From CSS>> 11:59:59 312
<failure xmlns="urn:ietf:params:xml:ns:xmpp-sasl"><not-authorized/></failure>ism>X-OAUTH2</mechanism><mechanism>X-GOOGLE-TOKEN</mechanism><mechanism>PLAIN</mechanism></mechanisms></stream:features>
From CSS>> 11:59:59 314
</stream:stream>urn:ietf:params:xml:ns:xmpp-sasl"><not-authorized/></failure>ism>X-OAUTH2</mechanism><mechanism>X-GOOGLE-TOKEN</mechanism><mechanism>PLAIN</mechanism></mechanisms></stream:features>