2016-03-12 3 views
2

Bonjour, j'utilise l'API non officielle x-box pour envoyer des messages sur des comptes live x-box. Voici mon exemple de code et mon erreur (Problem).401 Erreur d'autorisation dans l'API xbox non officielle

code:

<?php 
    $arr = array('to' => array("gamoneybcn"), 'message' => "This is an Test Test example message sent via XboxAPI."); 

    $post = json_encode($arr); 

    $proServiceUrl = "https://xboxapi.com/v2/messages/"; 
    $contentsType = 'application/json';   
    $methods = 'POST';     
    $auths = 'X-AUTH: XXXX'; 

    $profilesCurl = curl_init(); 
    curl_setopt($profilesCurl, CURLOPT_URL, $proServiceUrl); 
    curl_setopt($profilesCurl, CURLOPT_RETURNTRANSFER, true); 
    curl_setopt($profilesCurl, CURLOPT_POSTFIELDS, $post); 
    curl_setopt($profilesCurl, CURLINFO_HEADER_OUT, true); 
    curl_setopt($profilesCurl, CURLOPT_HTTPHEADER, Array('Content-type:'.$contentsType.';auth='.$auths)); 
    curl_setopt($profilesCurl, CURLOPT_HTTPHEADER, Array($auths)); 
    $profilesJson = curl_exec($profilesCurl); 
    echo "<pre>"; 
    print_r($profilesJson); 
    exit; 
?> 

Problème:

Si je ne suis pas loggué mon x-box un développeur non officielle de mon compte api ne fonctionne pas et obtenir le code d'erreur comme ci-dessous.

Erreur:

{ "succès": false, "error_code": 401, "error_message": "Une connexion fraîche est nécessaire pour obtenir un nouveau jeton de Microsoft"}.

Note:

Dès que je me suis connecté à mon x-box un développeur api compte de l'API run.i ont aussi d'abord faire l'authentification boucle, mais je ne sais pas est-il possible après l'authentification boucle ? Si c'est possible en faisant une première authentification, alors s'il vous plaît aidez-moi à résoudre ce problème dès que possible. Un grand merci d'avance.

+0

Veuillez répondre à cette question dès que possible s'il vous plaît. –

Répondre

1

J'ai juste rencontré le même problème et c'était mon premier résultat de recherche. Lorsque vous liez initialement votre compte Xbox API à un compte Microsoft, l'API Xbox stocke uniquement l'e-mail du compte et un jeton oAuth, plutôt que d'enregistrer votre mot de passe. Ce jeton n'est valide que pour une période limitée. Vous devez donc vous connecter régulièrement à votre compte Microsoft via le site Web de l'API Xbox pour générer de nouveaux jetons oAuth. Pour ce faire, allez sur votre profile page on the Xbox API site et cliquez sur "Se connecter à Xbox LIVE" en bas à gauche. Entrez les informations d'identification de votre compte et appuyez sur "Se connecter à Xbox LIVE", ou cliquez sur "Se connecter à Xbox LIVE avec oAuth" et il vous demandera de vous connecter sur le site Xbox. Les deux méthodes devraient essentiellement faire la même chose puisque le site dit qu'il ne stocke jamais ou n'enregistre jamais votre mot de passe, mais si vous êtes parano, optez pour l'option oAuth.