0

Je développe une application iOS en utilisant IBM MobileFirst Platform 8.0 sdk qui ont des capacités de notification pushIBM mobile première plate-forme - Envoi Push Notification de l'adaptateur

Je parvins à envoyer une notification par postier, le processus a été obtenir un jeton le serveur de la plate-forme MobileFirst et envoyer la notification par le repos api avec le jeton

le lien tutoriel j'ai suivi est

Side

Server - https://mobilefirstplatform.ibmcloud.com/tutorials/en/foundation/8.0/notifications/sending-notifications/

côté client - https://mobilefirstplatform.ibmcloud.com/tutorials/en/foundation/8.0/notifications/handling-push-notifications/cordova/

Get Token - https://mobilefirstplatform.ibmcloud.com/tutorials/en/foundation/8.0/authentication-and-security/confidential-clients/#obtaining-an-access-token

Pour l'instant, je suis en train d'envoyer une notification push lorsque l'application déclenche un appel d'adaptateur

Je suis actuellement coincé sur l'envoi de la notification à l'aide WL.Server.invokeHttp, ci-dessous est plus code adaptateur

function sendPushNotification(message) {  
    var result = getToken();  
    var access_token = "Bearer " + result["access_token"];  

    var requestStructure = { 
     method : 'post', 
     returnedContentType : 'json', 
     path : '/imfpush/v1/apps/my.app/messages', 
     headers: { 
      "Content-Type" : "application/json", 
      "Authorization" : access_token 
     }, 
     parameters : { 
      'message':{'alert' : 'Test message'} 
     } 
    }; 

    result = MFP.Server.invokeHttp(requestStructure); 

    return result; 
} 


function getToken() { 
    var requestStructure = { 
     method : 'post', 
     returnedContentType : 'json', 
     path : '/mfp/api/az/v1/token',  
     headers: { 
      "Content-Type" : "application/x-www-form-urlencoded", 
      "Authorization" : "Basic UHVzaE5vd213123asdsadGlvbjpQdXNoTm90aasdasdWZpY2F0aW9u" 
     }, 
     parameters:{ 
      "grant_type" : "client_credentials", 
      "scope" : "push.application.my.app messages.write" 
     } 
    }; 

    var results = MFP.Server.invokeHttp(requestStructure); 
    return results; 
} 

Je semble avoir le problème

parameters : { 
    'message':{'alert' : 'Test message'} 
} 

Je l'aurais peut-être mal fait sur cette partie, j'espère avoir des conseils.

Merci à l'avance

+0

Vous semblez être la cible manquante dans le JSON: https://www.ibm.com/support/knowledgecenter/SSHS8R_8.0.0/com .ibm.worklight.apiref.doc/rest_runtime/r_restapi_push_message_post.html –

Répondre

0

La méthode sendPushNotification utilisent une syntaxe mal pour appeler WS à Mobile First. vous nuage changer comme ceci:

function sendPushNotification(message) {  
var result = getToken();  
var access_token = "Bearer " + result["access_token"];  

var requestStructure = { 
    method : 'post', 
    returnedContentType : 'json', 
    path : '/imfpush/v1/apps/my.app/messages', 
    headers: { 
     "Authorization" : access_token 
    }, 
    body: { 
     content: 'message':{'alert' : 'Test message'}, 
     contentType: 'application/json' 
    } 
}; 

result = MFP.Server.invokeHttp(requestStructure); 

return result; 

}