Erreur de Serveur interne 500 simplexml_load_file
si j'utilise Firefox, et l'accès http://svcs.ebay.com/services/search/FindingService/v1 je obtenir une sorte de XML dans respose, quand je le faire par le biais de PHP, j'obtiens Erreur de Serveur Interne 500
$ php -r 'print_r(simplexml_load_file("http://svcs.ebay.com/services/search/FindingService/v1"));' PHP Warning: simplexml_load_file(http://svcs.ebay.com/services/search/FindingService/v1): failed to open stream: HTTP request failed! HTTP/1.1 500 Internal Server Error en ligne de Commande code on line 1 PHP trace de la Pile: PHP 1. {principal}() de la ligne de Commande code:0 PHP 2. simplexml_load_file() de la ligne de Commande code:1 PHP Warning: simplexml_load_file(): I/O avertissement : échec de chargement de l'entité externe "http://svcs.ebay.com/services/search/FindingService/v1" en ligne de Commande code on line 1 PHP trace de la Pile: PHP 1. {principal}() de la ligne de Commande code:0 PHP 2. simplexml_load_file() de la ligne de Commande code:1 $
- vous devez être probablement manque quelques post ou get élément. si vous avez besoin de contenu, même si c'est 500 erreur, vous devriez regarder en boucle.
- Je suis en train de suivre ce live exemple: developer.ebay.com/DevZone/finding/HowTo/...
- de plus, il fonctionne dans firefox sans faire GET ou POST, je suis juste essayer d'accéder à cette URL et j'ai déjà obtenir un XML et pas ISE500
- Lorsqu'une URL est tapé dans la barre d'adresse du navigateur est un GET, si vous regardez dans Firebug vous devriez voir ça.
Vous devez vous connecter pour publier un commentaire.
Lorsque je visite http://svcs.ebay.com/services/search/FindingService/v1 dans firefox, firebug rapports que le HTTP reponse code est en effet 500. (même si il envoie un peu de XML dans le corps de la requête)
Vous appelez le service web dans le mauvais sens.
Oui, vous l'avez XML de retour, mais le code de réponse est de 500, ce qui signifie que votre adresse n'est pas correcte.
Appel ximlexml_load_file via l'url des wrappers s'attend à un code de réussite.
Cela dit, vous pourriez probablement obtenir lors de toute façon. Peut-être.
Mais vous devriez comprendre comment le service souhaite vous interroger.
Si vous voulez être en mesure de lire 500 demande d'utilisation des données curl
Quand je vais sur ce site, j'obtiens:
Il semblerait donc que l'URL est un service web et nécessite probablement une sorte d'authentification ou au moins les données d'entrée dans l'entête de la requête. La réponse HTTP 500, selon Wikipedia, est une erreur générique ce qui signifie que le serveur ne pouvez pas spécifier le problème, mais qui sait il y en avait un. Voici la meilleure partie de cet article:
Tout cela, je dois dire que votre problème est que vous êtes en essayant de récupérer un fichier à partir d'un serveur distant à l'aide d'une méthode qui suppose que vous avez un répertoire au niveau de l'accès à ce fichier, et le serveur répond avec des "Euh, quoi?"
Si vous voulez obtenir les réels erreur XML comme si vous étiez dans Firefox, utiliser cURL:
Si vous voulez à réellement obtenir quelque chose en retour plus de sens, je regarde PHP SoapClient méthodes et la réelle ebay documentation du service web.
Les en-têtes http ont besoin d'être mis en précisant que l'opération soit exécutée. Si vous lisez comment faire un appel à l'aide de la constatation de l'API, l'article mentionne les en-têtes http suivant qui doivent être définis:
Une fois ceux-ci sont mis à votre appel devrait fonctionner correctement.
Peut-être que vous voulez, essayez l'URL suivante. Quand je le fais, je serai de retour le XML et une réponse 200.
http://svcs.ebay.com/services/search/FindingService/v1?wsdl