Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Azure移动服务是否允许我在应用程序之间交换目标消息?_C#_Sockets_Ssl_Azure Mobile Services - Fatal编程技术网

C# Azure移动服务是否允许我在应用程序之间交换目标消息?

C# Azure移动服务是否允许我在应用程序之间交换目标消息?,c#,sockets,ssl,azure-mobile-services,C#,Sockets,Ssl,Azure Mobile Services,我正在创建一对应用程序,一个是Windows8,另一个是WP8。通信需要在两人之间进行,但只能在被邀请参加对话的人(由Windows 8应用程序发送的邀请)和同意的人(使用WP8应用程序)之间进行 看,它可能看起来像这样: Windows8 app, User = Billy-Bob WP8 app users who were invited by Billy-Bob and accepted = Miley, Wiley, Kiley, and Riley Windows8 app

我正在创建一对应用程序,一个是Windows8,另一个是WP8。通信需要在两人之间进行,但只能在被邀请参加对话的人(由Windows 8应用程序发送的邀请)和同意的人(使用WP8应用程序)之间进行

看,它可能看起来像这样:

Windows8 app, User = Billy-Bob
    WP8 app users who were invited by Billy-Bob and accepted = Miley, Wiley, Kiley, and Riley

Windows8 app, User = Rory
    WP8 app, users who were invited by Rory and accepted = Gerry, Lou, Rod, Ted
比利·鲍勃是唯一一个收到麦莉、威利、基利和莱利消息的人。 Rory是唯一接收Lou、Rod、Gerry和Ted信息的人

我认为WindowsAzure移动服务可能是实现这一点的最佳方式,使用原始WNS推送通知。但我不知道这在WAMS中是否可行,或者我是否会试图将一个八角形物体强制放入一个梯形容器中

这是否可行?若否,原因为何?如果是,我如何进行


我的另一个选择是使用ssl套接字,但如果可能的话,我宁愿避免使用ssl套接字。

是的,可以使用推送通知(通过Azure移动服务或不通过Azure移动服务)来实现,但请记住,无推送通知系统-无论是Windows通知服务(WNS,适用于Windows 8)、Microsoft推送通知服务(MPNS,适用于Windows Phone)甚至苹果推送通知服务(APNS,适用于iOS设备和MacOS应用程序)-保证消息的传递-大多数都以“尽力而为”的方式进行。此外,根据您要交换的消息和要到达的设备,您可以“推送”的内容可能有大小限制(我不知道MPN,但对于APN,有效负载不能超过256字节)

除了纯推送机制,可能还有其他替代方案。正如您所提到的,套接字可能是其中之一(尽管这可能受到某些防火墙的限制)。Azure移动服务空间中的某些东西可以通过将消息存储在某种表中模拟队列(甚至是真实队列,如服务总线提供的队列)来工作,并使用推送通知仅通知应用程序有新消息可用(这也可以解决脱机情况,即推送通知无法到达目的地,但应用程序可以在其联机时轮询新消息)