2014-04-10 3 views
0

비슷한 질문이 많이 있다는 것을 알고 있지만 해결책은 없습니다.웹 서비스에 액세스

웹 서비스에 액세스하려고하지만 HTTP 오류 : 401이 승인되지 않습니다.

from suds.transport.http import HttpAuthenticated 
from suds.client import Client 
import base64 
url = 'http://server.something.com/path/to/Service.svc' 

transport = HttpAuthenticated() 
client = Client(url,username='******', password='********') 

그리고 오류가 아래 점점 : 어떤 도움을 이해할 수있을 것이다

Traceback (most recent call last): 
File "./getDetails.py", line 127, in <module> 
test() 
File "./getDetails.py", line 121, in test 
client = Client(url,username='****', password='******') 
File "/usr/local/lib/python2.7/dist-packages/suds-0.3.7-    py2.7.egg/suds/client.py", line 109, in __init__ 
self.wsdl = Definitions(url, options) 
File "/usr/local/lib/python2.7/dist-packages/suds-0.3.7- py2.7.egg/suds/wsdl.py", line 172, in __init__ 
root = p.parse(url=url).root() 
File "/usr/local/lib/python2.7/dist-packages/suds-0.3.7-py2.7.egg/suds/sax/parser.py", line 133, in parse 
fp = self.transport.open(Request(url)) 
File "/usr/local/lib/python2.7/dist-packages/suds-0.3.7-py2.7.egg/suds/transport/https.py", line 69, in open 
return HttpTransport.open(self, request) 
File "/usr/local/lib/python2.7/dist-packages/suds-0.3.7-py2.7.egg/suds/transport/http.py", line 72, in open 
raise TransportError(str(e), e.code, e.fp) 
suds.transport.TransportError: HTTP Error 401: Unauthorized 

여기 내 코드입니다. 미리 감사드립니다. 이 결의는 당신이 질문을하면

+0

안녕하세요! 저는 사용자 이름과 비밀번호를 헤더로 설정해야한다고 생각합니다. 귀하의 서비스는 인증 방법을 공개합니까? 또는 어떤 인증 객체를 가지고 있습니까? – israelord

+0

죄송합니다. – mrutyunjay

답변

0

는 몰라하지만 난 당신이 라이브러리 Requests

import requests 
response = requests.get('https://api.github.com/user', auth=('user', 'pass')) 

당신이 방법이 아닌 루트 서비스를 가리키는 코드에 의하면를 사용하는 것이 좋습니다.

+0

어떻게이 후에 메서드를 호출합니까 ?? 내 코드에서 나는 처음으로 클라이언트를 초기화하려고했다. 그것을 사용하여 메소드를 호출 할 수 있습니다. – mrutyunjay

+0

죄송합니다. 코드를 읽고 싶습니다. 서비스가 비누 기초입니다. – BlaShadow

+0

예. 맞아. – mrutyunjay

관련 문제