L'envoi de requête http GET à l'aide de boost::asio, semblable à friser
Je suis en train d'envoyer une requête http GET à l'aide de l'API REST de domaine.
Fondamentalement, ce que je suis en train de faire est de remplacer la demande curl suivante:
curl -k -H "Content-Type: application/json" -X GET
--data '{"username":"[email protected]", "password":"test"}' https:/domain.name/api/login/
avec certains de code c++ à l'aide de boost::asio
.
Je ne pas ce trouver tous les code c++ ici , mais certains points de contrôle serait génial.
- Je vous suggère de libcurl
- J'ai lu sur libcurl, mais mon objectif est de faire de même avec le boost
- eh bien, rien de suralimentation ne à distance ce qui s'enroulent one-liner n'. Envisager des réponses de redirection HTTP, bloc de codage, de maintenir, de compression, auth, certificats, ...
Vous devez vous connecter pour publier un commentaire.
boost::asio
n'est pas une application au niveau de la bibliothèque. Ainsi, vous pouvez ouvrir une connexion avec elle, faire une négociation SSL et ainsi de suite. Mais on ne peut pas construire des requêtes HTTP viaboost::asio
car il est conçu pour juste envoyer/recevoir des données.Mais, vous pouvez essayer d'expérimenter avec cette asio HTTP client exemple. Sans doute cela peut être une bonne chose pour commencer.
Je me suis retrouvé aussi travailler avec
boost
afin d'envoyer des "sur-mesure" requête HTTP GET - j'ai couru le serveur en local sur ma machine Ubuntu (16.04).Dans mon cas, la demande a été d'une API propriétaire de mon serveur de mise en œuvre (liées à des mots il gardait dans sa base de données), mais vous pouvez modifier le
queryStr
variable quelle que soit la chaîne de requête que vous souhaitez.Également, de modifier le
argv[1]
etargv[2]
lorsque vous avez exécuté le programme pour tenir vos valeurs requises (adresse IP, les requêtes, et le port si nécessaire - par défaut est 80).L'exemple d'origine, j'ai suivi est ici: Boost-simple-http-get-request-sync-client
Espère que c'est utile !
Acclamations,
Gars.
Il y a un Urdl bibliothèque, créée par Christopher M. Kohlhoff, l'auteur du coup de pouce.Asio:
Votre demande d'échantillon serait comme suit: