Ошибка 404 при push-уведомлении с использованием примера кода - PullRequest
2 голосов
/ 26 мая 2011

Я получил свой URL из приложения. Начинается с:

http://sn1.notify.live.net/throttledthirdparty/01.00/

, и если я перехожу на этот URL-адрес с помощью браузера, я получаю сообщение:

Microsoft Push Notification Server

Затем я взял код, предоставленный Microsoft.

http://msdn.microsoft.com/en-us/library/ff402545%28v=VS.92%29.aspx

Если я возьму код C # и использую его как есть (изменяя только URL, полезная нагрузка становится пустым байтовым массивом и меняя строку "" на Guid.NewGuid (). ToString ()

Я получаю 404 каждый раз.

Поскольку я не получаю 404 от браузера, контент должен иметь значение, а серверы push-уведомлений зависят от контента, поэтому, если я изменю его на простое необработанное уведомление, удаляя уведомление и добавляя (по мере того как они рекомендуется):

        byte[] notificationMessage = new byte[] {0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08};
        sendNotificationRequest.Headers.Add("X-NotificationClass", "13"); 

Я все еще получаю 404 каждый раз. Я пытался делать тост-уведомления с тем же результатом.

Что я делаю не так?

Ответы [ 2 ]

1 голос
/ 27 мая 2011

Причина, по которой вы получаете 404, заключается в том, что отправляемые вами данные уведомлений не соответствуют ожиданиямПопробуйте это и посмотрите, работает ли это.

Вы можете найти учебник здесь: http://benjii.me/2011/04/push-notifications-in-windows-phone-7-3-push-that-notification/

string template =
        "<?xml version='1.0' encoding='utf-8'?>" +
        "<wp:notification xmlns:wp='WPNotification'>" +
            "<wp:toast>" +
                "<wp:text1>{0}</wp:text1>" +
                "<wp:text2>{1}</wp:text2>" +
            "</wp:toast>" +
        "</wp:notification>";

string toastXML = string.Format(template, "Testing", "This is a test");

byte[] notificationMessage = new UTF8Encoding().GetBytes(toastXML);
0 голосов
/ 07 июня 2011

Я в итоге заставил мою работать после привязки тост-уведомлений к оболочке. У меня был метод, который делал это, но в некоторых случаях не вызывал этот метод.

...