![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 677 Pomógł: 11 Dołączył: 18.11.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Mam problem z odczytaniem takiego nagłówka: <wsdl:types> <s:schema elementFormDefault="qualified" targetNamespace="http://tempuri.org/"> <s:element name="AuthenticationTicket" type="tns:AuthenticationTicket"/> <s:complexType name="AuthenticationTicket"> <s:sequence> <s:element minOccurs="0" maxOccurs="1" name="username" type="s:string"/> <s:element minOccurs="0" maxOccurs="1" name="password" type="s:string"/> </s:sequence> <s:anyAttribute/> </s:complexType> </s:schema> </wsdl:types> W ogóle nie wiem jak wysłać user i password. W internecie znalazłem niby sposoby ale ciągle mam błąd ;/ Ten post edytował Randallmaster 16.01.2015, 11:54:35 |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 677 Pomógł: 11 Dołączył: 18.11.2009 Ostrzeżenie: (0%) ![]() ![]() |
NazwaMetody?? co w tym miejscu powinno się znajdować?
Podpowiedź cena ale mało z niej rozumiem ![]() Ten post edytował Randallmaster 16.01.2015, 12:52:18 |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
może AuthenticationTicket ? Nie wiem, zerknij w dokumentacje SoapClient tam masz metodę do podglądu dostępnych metod dla WS
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 677 Pomógł: 11 Dołączył: 18.11.2009 Ostrzeżenie: (0%) ![]() ![]() |
Nie wiem jak dokładnie to sprawdzić:
Poniżej skrócona wersja xml:
Jeżeli chodzi o funkcję wywołuje ją następująco:
jak do tego wywołania dodać AuthenticationTicket ? Wywołanie funkcji działa poprawnie ale niestety dostaję za każdym razem pusty zwrot ponieważ nic nie dodałem w header Ten post edytował Randallmaster 16.01.2015, 15:42:23 |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 46 Pomógł: 0 Dołączył: 20.02.2015 Ostrzeżenie: (0%) ![]() ![]() |
poproszę o podpowiedz według wujka googla sprawa powiną być bardzo prosta ale dla mnie nie bardzo
nie chce tworzyć nowego tematu wiec napisze tutaj przykładowe zapytanie <body> <p : NumerK xmlns:p="http://adres/model/dane"> <p:NumerK>4001</p:NumerK> </p:NumerK> </body> odpowiedz <NumerKOdpowiedz xmls="http://adres/model/dane"> <DaneK> <NumerK>4001</NumerK> <imie>abc</imie> <nazwisko>abc</nazwisko> </DaneK> </NumerKOdpowiedz> WSDL: http://192.168.22.6:8280/services/numerk?wsdl Adres serwisu: http://192.168.22.6:8280/services/numerk $wsdl_link = 'http://192.168.22.6:8280/services/numerk?wsdl'; $client = new SoapClient($wsdl_link); echo "<BR /> var dump <BR />"; var_dump($client->__getFunctions()); // wynik array(24) { [0]=> string(63) "..........numerk(numerk$parameters)" } echo "<BR /> prnt f <BR />"; print_r($client); //SoapClient Object ( [_soap_version] => 1 [sdl] => Resource id #4 ) echo "<BR /> cos <BR />"; i to działa nic pyzatym z manualni php nie chce wyjść chodzi głownie o zadanie pytania podaj 'imie' dla 'numerk' = 4001 jakakolwiek podpowiedz będzie mile widziana |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 677 Pomógł: 11 Dołączył: 18.11.2009 Ostrzeżenie: (0%) ![]() ![]() |
Problem został już dawno rozwiązany
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 46 Pomógł: 0 Dołączył: 20.02.2015 Ostrzeżenie: (0%) ![]() ![]() |
a możesz mi coś podpowiedzieć z moim xml'em ?
to co mi się udało zrobić <?php $metoda = "NumerK"; $request = 'p:NumerK xmlns:p="http://nazwa/model/dane" '; $request1 = 'p:NumerK'; try { $options = array( 'soap_version'=>SOAP_1_2, 'exceptions'=>true, 'trace'=>1, 'cache_wsdl'=>WSDL_CACHE_NONE ); $client = new SoapClient('http://192.168.22.6:8280/services/numer?wsdl', $options); $results = $client-> $metoda(array( $request1 =>array('NumerK'=>'4001'))); } catch (Exception $e) { echo "<h2>Exception Error!</h2>"; echo $e->getMessage(); } var_dump ($results); // object(stdClass)#2 (0) { } echo "<BR /> var dump typy<BR />"; echo '<pre>'; var_dump($client->__getTypes()); echo '</pre>'; echo "<BR /> var dump funkcje<BR />"; echo '<pre>'; var_dump($client->__getFunctions()); echo '</pre>'; echo "<BR /> print_r <BR />"; echo '<pre>'; print_r($client); echo '</pre>'; ?> <body> <p:NumerK xmlns:p="http://nazwa/model/dane"> <!--Exactly 1 occurrence--> <p:NumerK>4001</p:NumerK> </p:NumerK> </body> <NumerK_Odpowiedz xmlns="http://nazwa/model/dane"> <DaneK> <NumerK>4001</NumerK> <Imie>Piotr</Imie> <Nazwisko>Nowak</Nazwisko> </DaneK> </NumerK_Odpowiedz> sa typy, funkcje SoapClient Object ( [trace] => 1 [_soap_version] => 2 [sdl] => Resource id #4 [__last_request] => [httpsocket] => Resource id #5 [_use_proxy] => 0 [httpurl] => Resource id #6 [__last_request_headers] => POST /services/NumerK.SOAP11Endpoint HTTP/1.1 Host: 192.168.22.6:8280 Connection: Keep-Alive User-Agent: PHP-SOAP/5.4.27 Content-Type: application/soap+xml; charset=utf-8; action="urn:NumerK" Content-Length: 323 [__last_response_headers] => HTTP/1.1 200 OK Content-Type: application/soap+xml; charset=utf-8; action="urn:NumerK_Response" Date: Fri, 20 Feb 2015 11:21:42 GMT Server: Synapse-HttpComponents-NIO Transfer-Encoding: chunked Connection: Keep-Alive [__last_response] => ) ale jak mogę wyświetlić imię numeru 4001 ![]() jakakolwiek podpowiedz? Ten post edytował noche 20.02.2015, 12:29:27 |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 183 Pomógł: 14 Dołączył: 27.09.2014 Ostrzeżenie: (0%) ![]() ![]() |
polecam skorzystać z gotowca jakim jest NUSOAP są tam gotowi clienci oraz serwery
![]() |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 46 Pomógł: 0 Dołączył: 20.02.2015 Ostrzeżenie: (0%) ![]() ![]() |
a jakieś sprawdzone tutoriale ?
![]() czytałem o nusoap ale chciałem przetestować na standardowym soapcliencie, wdrozyc sie troche w ten temat |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 1 933 Pomógł: 460 Dołączył: 2.04.2010 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
a jakieś sprawdzone tutoriale ? ![]() czytałem o nusoap ale chciałem przetestować na standardowym soapcliencie, wdrozyc sie troche w ten temat Klient SOAP jest tak prostym narzędziem, że wg mnie szkoda czasu na jakieś udziwnienia w rodzaju nusoap. -------------------- Jeśli pomogłem, kliknij proszę 'pomógł'. Dzięki.
|
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 677 Pomógł: 11 Dołączył: 18.11.2009 Ostrzeżenie: (0%) ![]() ![]() |
Korzystam już z klienta SOAP i jest o wiele wygodniejszy
![]() |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 46 Pomógł: 0 Dołączył: 20.02.2015 Ostrzeżenie: (0%) ![]() ![]() |
udało mi się wymordować coś takiego
$URL = "http://192.168.2.6:8280/services/MSSQL2008_TEST?wsdl"; $option = array("trace"=>true); $client = new SOAPClient($URL, $option); $functions = $client->__getFunctions(); $employeeId_key = ''; $bodyoptions = array(); $response = $client->__soapCall("Lista" , $bodyoptions); ----> dodane po rozwiązaniu problemu ![]() <Slownik xmlns="http://www.pl/services/mssql2008"> <Element> <IDSlownik>1</IDSlownik> <IDFormularz>1</IDFormularz> <Nazwa>info1</Nazwa> <Aktywnosc>1</Aktywnosc> </Element> <Element> <IDSlownik>2</IDSlownik> <IDFormularz>1</IDFormularz> <Nazwa>info2</Nazwa> <Aktywnosc>1</Aktywnosc> </Element> </Slownik> ale niestety nie wiem jak wyświetlić obie odpowiedzi z "Nazwa" podpowiecie? Ten post edytował noche 3.03.2015, 10:05:20 |
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 183 Pomógł: 14 Dołączył: 27.09.2014 Ostrzeżenie: (0%) ![]() ![]() |
pokaz kod serwera
|
|
|
![]() ![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 46 Pomógł: 0 Dołączył: 20.02.2015 Ostrzeżenie: (0%) ![]() ![]() |
hmm
nie tworzyłem żadnej części serwera gdzieś wyczytałem ze jak jest wsdl to nie ma takiej konieczności ale soap to zupełnie nowy temat dla mnie wiec zaraz poczytam na ten temat chyba ze chodzi o to ? . . <xs:element name="Lista"> <xs:complexType> <xs:sequence/> </xs:complexType> </xs:element> <xs:element name="Slownik" type="ns2:Slownik"/> <xs:complexType name="Slownik"> <xs:sequence> <xs:element maxOccurs="unbounded" minOccurs="0" name="Element" type="ns2:Element"/> </xs:sequence> </xs:complexType> <xs:complexType name="Element"> <xs:sequence> <xs:element name="IDSlownik" nillable="true" type="xs:integer"/> <xs:element name="IDFormularz" nillable="true" type="xs:integer"/> <xs:element name="Nazwa" nillable="true" type="xs:string"/> <xs:element name="Aktywnosc" nillable="true" type="xs:integer"/> </xs:sequence> </xs:complexType> . . <wsdl:message name="ListaRequest"> <wsdl:part name="parameters" element="ns2:Lista"/> </wsdl:message> <wsdl:message name="ListaResponse"> <wsdl:part name="parameters" element="ns2:Slownik"/> </wsdl:message> . . <wsdl:operation name="Lista"> <wsdl:documentation/> <wsdl:input message="ns2:ListaRequest" wsaw:Action="urn:Lista"/> <wsdl:output message="ns2:ListaResponse" wsaw:Action="urn:ListaResponse"/> <wsdl:fault message="ns2:DataServiceFault" name="DataServiceFault" wsaw:Action="urn:ListaDataServiceFault"/> </wsdl:operation . . <wsdl:operation name="Lista"> <soap:operation soapAction="urn:Lista" style="document"/> . . <wsdl:operation name="Lista"> <soap12:operation soapAction="urn:Lista" style="document"/> . . <wsdl:operation name="Lista"> <http:operation location="Lista"/> <wsdl:input> <mime:content type="text/xml" part="parameters"/> </wsdl:input> <wsdl:output> <mime:content type="text/xml" part="parameters"/> </wsdl:output> </wsdl:operation> nie kopiowałem całości bo sporo tego jest print_r($response); stdClass Object ( [Element] => Array ( [0] => stdClass Object ( [IDSlownik] => 1 [IDFormularz] => 1 [Nazwa] => info1 [Aktywnosc] => 1 ) [1] => stdClass Object ( [IDSlownik] => 3 [IDFormularz] => 1 [Nazwa] => info2 [Aktywnosc] => 1 ) ) ) ![]() Ten post edytował noche 3.03.2015, 10:07:07 |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 24.07.2025 - 15:42 |