2014-11-27 3 views
0

내 앱에서 API를 호출하고 있습니다. 나는 URL을 구축하여 시작Net.WebClient에서 url을 호출 할 때 '401 Unauthorized'

...

Dim url As String = "http://" & Home.sn_username & ":" & Home.sn_password & "@" & Home.sn_ip & "/command.htm?number=" & phonenumber 
url = Replace(url, Chr(13), "") 

나는 확실히 그것의 호출을 시도하는 URL이 올바른지 확인하려면, 그래서 난 콘솔에 덤프 한 ...

Console.WriteLine("DIALING: " & url) 
이 작동하지 않는

Dim client As New Net.WebClient 
client.DownloadString(url) 

...

URL은에 발견, 그래서 결국 나는 Net.Webclient로 URL을 호출합니다. 예외가 발생하고 401 Unauthorized 오류가 발생합니다.

내가 잘못 했나요? 최종 URL은 다음과 같이이다 : 나는 그것을 받아 내 브라우저에 직접 붙여 넣을 경우

http://username:[email protected]/command.htm?Number=01611234565

그것을 잘 작동합니다! (그것의 IP 전화 API를 ... 내 탁상 전화기 전화 번호를!).

다른 자격 증명이나 다른 방법을 제공해야합니까? 사전에

감사합니다!

+0

방화벽을 사용하고 있습니까? –

답변

0

WebClient에 인증 자격 증명을 추가하기 전에 실행하기 전에 url 앞에 추가하지 마십시오.

client.Credentials = new NetworkCredential(Home.sn_username, Home.sn_password) 
+0

감사합니다 Fatih, 준결승에서 명확하게 API를 호출하지만, 이상하게도 여전히 401 오류가있는 예외를 제공합니다. 이상한. 나는 단지 오류를 보완 할 수 있었지만 가능한 한 그것을 일으키는 것을 알고 싶다! :) – John

+0

@ 존 글쎄, 당신은 URL에서 인증 부분을 생략하는 것을 잊어 버릴 수 있을지 모르겠다? –

+0

슬프게도 체크하지 않고 더블 체크. 신은 알고 계십니다 :( – John

관련 문제