2017-06-14 6 views
0

Nous utilisons SharePoint 2016 pour le stockage et la récupération de fichiers. Et en utilisant la classe java httpclient pour le faire. Maintenant, nous utilisons l'API suivante pour vérifier si le dossier est déjà présent.Dossier de chèques SharePoint 2016 existant 500 erreur de serveur interne

String folderURI = "/_api/Web/GetFolderByServerRelativeUrl('" + "/<document library/folderpath>" + "')"; 

e.g : folderpath = test1/type/2007 

Voici le code pour contacter SharePoint et obtenir sa réponse.

HttpGet httpget = new HttpGet(finalURL); 
httpget.setHeader("Content-Type", "application/octet-stream"); 
httpget.setHeader("X-HTTP-Method", requestMethod); 
httpget.setHeader("Cookie", "rtFa="YqLvkl";FedAuth="uZnxt"); 

response = httpClient.execute((HttpUriRequest) httpget); 

Si le dossier déjà présent, que je reçois 200 ok comme réponse, ce qui est correct. Mais si le dossier n'est pas présent, je reçois 500 erreur interne du serveur. au lieu de cela, je devrais obtenir 404 non trouvé. Qu'est-ce que je rate. comment venir pour la même API, je reçois une réponse correcte (dossier présent 200 ok) et une erreur de serveur interne (dossier pas présent 500).

Répondre

0

Les erreurs 4xx sont des erreurs client; Les erreurs 5xx sont des erreurs de serveur.

Les erreurs 4xx signifient que vous (le client) avez fait une erreur dans la façon dont vous avez soumis votre demande. Les erreurs 5xx signifient que le serveur n'a pas réussi à répondre à une demande apparemment valide.

Une réponse de 404 (Page non trouvée) indiquerait que l'URI demandée est elle-même invalide/n'existe pas actuellement. Cela aurait du sens en guise de réponse si vous essayiez d'accéder au chemin direct d'un dossier qui n'existe pas (au lieu d'invoquer un service Web via l'URI /_api/Web/).

L'URI demandé est un appel de service Web valide, donc 404 Not Found ne serait pas une réponse appropriée. 500 (Erreur serveur interne) est la réponse générique qui indique que le serveur Web a rencontré une erreur lors de l'exécution d'une opération.

Dans ce cas, l'erreur est provoquée par le service Web qui tente d'extraire un dossier qui n'existe pas.

+0

hi Thriggle, si la ressource n'est pas trouvée (dossier/fichiers), la réponse sharepoint est introuvable. s'il est présent, c'est 200 ok. nous avons utilisé sharepoint 2013 avant cela, et nous avons eu cette réponse. Mais dans Sharepoint 2016, la recherche de fichiers donnant la même réponse (200.404), mais la réponse du dossier diffère (200.500). donc vous voulez dire 500 est la réponse correcte? – rrm