나는 레일 3에서 개발 및 Savon를 사용하고 (savonrb.com)레일 Savon는 SOAP 인증
내가I을 필요로 SOAP을 통해 웹 서비스에 연결해야
- 연결할 수는 있지만 인증을받을 수는 없습니다 ...
테스트 용 SOAP UI를 사용했습니다. & 모두 정상적으로 작동합니다. 여기
방법처럼 내 레일 코드 보인다 : 나는 응답을하지만
client = Savon::Client.new do wsdl.document = "http://services.blahblah.com/Service.asmx?WSDL" end client.wsse.credentials "username", "password", :digest if response.success? @soap_status = 'Connected' @data = response.to_array(:get_brochure_response, :error_message) end
: ERROR_MESSAGE가 인증에 실패 반환
다음그것이 SOAP UI의 모습입니다 ...
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:ser="http://services.blahblah.com/service"> <soap:Header> <ser:ICEAuthHeader> <!--Optional:--> <ser:Username>username</ser:Username> <!--Optional:--> <ser:Password>password</ser:Password> </ser:ICEAuthHeader> </soap:Header> <soap:Body> <ser:GetBrochure> <!--Optional:--> <ser:MappedID>123</ser:MappedID> </ser:GetBrochure> </soap:Body> </soap:Envelope>
Savon을 사용 해본 적이 없지만 비누를 사용했습니다. 서버가 실제로 완료된 사례를 보았습니다. 너 너 c 을 제거하지 않고 테스트하십시오. 또한 당신이 돌아 오는 어떤 오류가 있습니까? SOAP 응답처럼? –
나는 SOAP 코드를 전달하지 않고있다. 예제로 더 이해하기 쉽도록 여기에 puten했다. SOAP에 연결하고 응답을받을 수 있습니다. 그러나 인증되지 않은 응답. 나는 username & password를 전달하는 많은 방법을 시도했지만 작동하지 않는 것 같습니다 ... –