我想引用Web服務,並且它需要用戶/通過身份驗證。 在VS 2008中,如果我嘗試「添加引用」或「添加服務引用」,我可以輸入的只是網址,無法輸入我的憑據。顯然,如果我嘗試加載WS,它顯示了我一個很好的消息:如何在Visual Studio 2008中對受密碼保護的Web服務進行身份驗證的服務引用
The request failed with HTTP status 403: Forbidden. Metadata contains a reference that cannot be resolved: The HTTP request is unauthorized with client authentication scheme 'Anonymous'. The authentication header received from the server was 'Basic realm="weblogic"'. The remote server returned an error: (401) Unauthorized.
所以我的問題是:是否有可能(使用VS 2008)添加到Web服務的引用,被保護?怎麼樣?
不,我們沒有在服務控制(和他們贏得了」取消認證方案)。使用duo用戶:通過URL也不起作用... 可以添加對另一個服務(不需要身份驗證的服務)的引用,然後修改一些配置文件並更改URL和輸入我的憑據? – ditto1977 2010-04-09 15:27:29
@ user312305 - 當然,這將是一種方式。查看更新的答案。至於實際的認證,這是另一回事。您的問題問如何生成代理,而不是如何以編程方式驗證和調用受保護的服務。問另一個問題,我會回答。一定要包括有關使用什麼平臺和認證方案的詳細信息,例如IIS,Asp.net webservice,FormsAuthentication等。看起來您可能需要添加www-auth頭。 – 2010-04-09 16:10:10
嗯,事情是,我們的提供者使用Vordel,它不公開一個wsdl(它暴露了一個URL,它掩蓋了所有可用的操作),所以我迷失了關於如何使用wsdl.exe生成代理(和這是我唯一想要的 - 生成代理)。我知道這個服務可以工作,我可以使用SoapUI進行測試,創建一個新的端點到已經生成的wsdl項目,並填充用戶/密碼屬性。我在VS2008中嘗試生成一個隨機的WS Reference,但由於我不知道「真實」服務暴露了什麼屬性,我認爲我不能修改代碼。 (感謝您的幫助!) – ditto1977 2010-04-09 16:43:46