2016-03-16 53 views
1

我希望能夠在MobileFIrst或工作燈適配器中獲取iOS設備的設備ID。如何在MobileFirst服務器適配器中獲取iOS設備ID?

我只看到這個方法:WL.Server.getClientDeviceContext() 但是這不包含設備ID。

WL.Device.getId() - 這僅在客戶端可用。

請advice-如何讓適配器代碼(JavaScript)的

編輯當前請求的設備ID: 只是爲了澄清,我感興趣的客戶標識符由客戶端設備進行當前的請求。

+0

這需要一個更好的解釋。你是否試圖獲得iPhone的udid? – ryantxr

回答

1

你沒有提到爲什麼你需要在server.I捕捉設備ID可以考慮三種方式來實現它:

a)使用WL.Server.getClientRequest() API -

var req=WL.Server.getClientRequest();        
WL.Logger.warn("X-WL-DEVICE-ID:::"+ req.getHeader("x-wl-device-id")); 

b)利用WL.Server.getCurrentDeviceIdentity() API -

如果存在與設備關聯的設備標識,則該方法返回設備標識。設備標識對象包含deviceID。 這個API是在MF 6.3

c)對於老版本的推出,你可以嘗試 -

WL.Server.getActiveUser("wl_deviceNoProvisioningRealm"); 
+0

我會試試這個,正是我在找的東西。謝謝! PS-我有一個需要記錄設備代碼的後端服務。所以,不要讓前端提交設備代碼,我可以在服務器上捕獲適配器中的後端調用。 – mgill

+0

注意: a)只有設備生成deviceid。如果請求來自desktopbrowser/mobileweb應用程序,則deviceid將爲空。 b)Deviceids可以更改 - 操作系統重置/升級等。後端邏輯阻止訪問基於deviceid,必須精心製作。 c)如果您依賴deviceid計數來跟蹤登錄到您系統的設備數量,則點b -deviceids的帳戶可能會更改。 –

0

據我所知...

DeviceId是一個客戶端「東西」。您如何期望從適配器獲得?
您需要在客戶端獲取它並將其發送到您的適配器,然後執行您可能需要的任何操作。

如果你能解釋你的最終目標,或許它會更容易幫助。

+0

適配器是一個服務器資源,它應該有提供請求的客戶端的某種標識符。我希望如果這是嵌入在來自客戶端的請求中。 – mgill

相關問題