2016-05-13 19 views
0

Ich habe versucht, grundlegende Auth während der folgenden this link. Ich habe auch this question gefolgt, um meinen Code unter Verwendung NTLM auth zu erhalten. Ich werde immer noch einen 401 Fehler geworfen. Ist dies eine veraltete Methode, SharePoint-Listen zu erstellen, oder stimmt etwas mit meinem Code nicht?Python werfen 401 Fehler beim Versuch, auf SharePoint-Listen zugreifen

import requests 

from requests_ntlm import HttpNtlmAuth 

response = requests.get("https://example.com/_api/web/...", auth=HttpNtlmAuth('username', 'password')) 

print(response.status_code) 
+0

Es ist der Server, der mit einem 401-Status antwortet. Was ist der Antwortkörper? 'print (response.text)' Sind Sie sicher, dass der Server ntlm verwendet? Konnten Sie sich mit Curl oder anderen Mitteln verbinden? Haben Sie versucht, eine Anfrage "accept" Header zu verwenden. '{'accept': 'application/json'}' –

+0

Ich bin mir sicher, dass der Server ntlm verwendet und wir uns mit jquery verbinden konnten. Wenn ich den response.text setze bekomme ich keine Ausgabe. Ich werde versuchen, den Akzeptieren-Header hinzuzufügen –

Antwort

0

Ihr Ansatz ist gut genug.

Versuchen Sie einige Änderungen wie folgt:

import requests 
from requests_ntlm import HttpNtlmAuth 

url="https://sharepointexample.com/" 
user, pwd = "username", "pwd" 
headers = {'accept': 'application/json;odata=verbose'} 
r = requests.get(url, auth=HttpNtlmAuth(user, pwd), headers=headers) 
print(r.status_code) 
print(r.content) 

Hier pflegen Sie 401-Antwort begegnen, anstatt werden Sie Antwort als 200 erhalten, die die HTTP-Antwort zeigt OK ist !! ..

Als nächstes wird der Inhalt zeigt Ihnen die Listenoptionen, die Sie als HTML-Seite analysieren können.

Hoffe das hilft !!

Verwandte Themen