簡體   English   中英

WNS X_WNS_MATCH錯誤的請求

[英]WNS X_WNS_MATCH bad request

對於Windows \\ Windows Phone設備(8.1),WNS和推送通知存在一個奇怪的問題。 如果我發送推送通知,則效果很好。 問題是當我嘗試向WNS發送X-WNS-Match請求時。 我正在發送當前標題:

DELETE /?token=<CHANNEL>
HTTP/1.1
Host: db3.notify.windows.com
Accept: */*
Authorization: Bearer <TOKEN>
content-type: text/xml
X-WNS-Match: type=wns/toast;all
Content-Length: 0

該服務的答案是:

HTTP/1.1 400 Bad Request
Content-Length: 0
X-WNS-STATUS: dropped
X-WNS-ERROR-DESCRIPTION: Content type not supported
X-WNS-MSG-ID: C51E1A17972EA7A
X-WNS-DEBUG-TRACE: DB3WNS2011131
Strict-Transport-Security: max-age=31536000; includeSubDomains
Date: Wed, 13 May 2015 21:05:06 GMT

我也嘗試在請求標頭中設置:

X-WNS-Type: wns/toast

現在我的疑問是:也許服務器不支持HTTP的DELETE方法嗎? 還是我需要為內容類型設置不同的內容? 我遵循了wns文檔: https ://msdn.microsoft.com/zh-cn/library/windows/apps/hh465435.aspx我正在azurewebsite(iis)和另一個使用Apache apache 2.2的域上進行測試。 26

請求是在PHP與卷曲。 謝謝。

我發現了問題。 我無法將MATCH的內容類型發送到WNS,因此我刪除了以下行:

curl_setopt($request,CURLOPT_POSTFIELDS, $template);

在模板為空的地方,此后,我需要以這種方式傳遞content-length(這對於HTTP是必需的):

$Header["ContentLength"] = "Content-Length : ".strlen($template);
curl_setopt($request,CURLOPT_HTTPHEADER, $Header);

現在響應狀態為200 OK

但是謝謝你,希望這可以幫助某人

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM