/ / Chiamata al servizio Web usando Curl con connessione telnet - curl, telnet, client webservice

Chiamata al servizio Web utilizzando Curl con connessione telnet - curl, telnet, client webservice

In questo momento sto provando a chiamare un servizio Web usandoComando di ricciolo dalla piattaforma Unix. Il servizio Web è disponibile su un server esterno. Posso connettere il server esterno usando solo Telnet. Il servizio Web utilizza l'autenticazione di base e devo fornire un nome utente e una password.

Qualcuno può aiutarmi con il modo corretto per eseguire questo?

risposte:

0 per risposta № 1

Se non hai bisogno di arricciare e vuoi semplicemente testare il servizio web locale tramite la connessione telnet, puoi semplicemente digitare i comandi HTTP appropriati.

$ telnet remotehost 80
Trying IP.IP.IP.IP...
Connected to remotehost.
Escape character is "^]".
GET / HTTP/1.0
Content-Type: text/xml;charset=utf-8
SOAPAction:urn:login
Authorization: Basic base64encodedstring


# need 2 carriage returns above to denote completion of request body.

Ma se si desidera il ricciolo per qualsiasi motivo, sembra che la funzione "TELNET" di Curls possa funzionare per passare il comando di arricciatura attraverso una connessione telnet.

curl telnet://remotehost

TELNET Il supporto telnet arricciatura è semplice e molto facile da usare. Curl passa tutti i dati passati ad esso su stdin sul server remoto. Connetti a a server telnet remoto utilizzando una riga di comando simile a:

    curl telnet://remote.server.com

E inserisci i dati da passare al server su stdin. Il risultato verrà inviato a stdout o al file specificato con -o. Si potrebbe desiderare l'opzione -N / - no-buffer per disattivare l'uscita bufferizzata per connessioni lente o simili. Passare le opzioni alla negoziazione del protocollo telnet, utilizzando l'opzione -t. Per dire al server usiamo un terminale vt100, provate qualcosa piace:

    curl -tTTYPE=vt100 telnet://remote.server.com

Altre opzioni interessanti per questo includono:

  • XDISPLOC = Imposta la posizione di visualizzazione X.

  • NEW_ENV = Imposta una variabile di ambiente. NOTA: il protocollo telnet non specifica alcun modo per accedere con un utente e una password specificati, quindi arricciare non può farlo automaticamente. fare questo, è necessario tenere traccia quando il prompt di accesso è ricevuto e inviare il nome utente e la password di conseguenza.