2017-02-23 2 views
1

J'utilise pact java> Pact verify fonctionne lorsque l'hôte du fournisseur est localhost. Comment puis-je fournir d'autres informations sur l'hôte? Lorsque je spécifie un fournisseur comme celui-ci,Pacte >> Hôte du fournisseur du Pacte autre que localhost


<serviceProvider> 
    <name>provider1</name> 
    <protocol>http</protocol> 
    **<host>**google.com**</host>** 
    <path>/</path> 

    <consumers> 
    <consumer> 
    <name>consumer1</name> 
    <pactFile>../pacts/test_consumer-test_provider.json</pactFile> 
    </consumer> 
    </consumers> 
</serviceProvider> 

Je reçois une réponse


Verifying a pact between consumer1 and provider1 
    [Using file ../pacts/test_consumer-test_provider.json] 
    Given test state 
     WARNING: State Change ignored as there is no stateChange URL 
    Invalid Information Model 
     Request Failed - google.com 

Comment puis-je fournir d'autres détails d'accueil?

Répondre

2

google.com est un hôte non authentique, il s'agit du nom de domaine de base de Google. Vous devez fournir un nom d'hôte réel pour envoyer les demandes.

Par exemple, en utilisant une boucle pour google.com:

$ curl -v http://google.com 
* Rebuilt URL to: http://google.com/ 
* Trying 216.58.203.110... 
* Connected to google.com (216.58.203.110) port 80 (#0) 
> GET/HTTP/1.1 
> Host: google.com 
> User-Agent: curl/7.47.0 
> Accept: */* 
> 
< HTTP/1.1 302 Found 
< Cache-Control: private 
< Content-Type: text/html; charset=UTF-8 
< Referrer-Policy: no-referrer 
< Location: http://www.google.com.au/?gfe_rd=cr&ei=ckz9WMKPDYTr8weL36iABA 
< Content-Length: 262 
< Date: Mon, 24 Apr 2017 00:53:06 GMT 
< 
<HTML><HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8"> 
<TITLE>302 Moved</TITLE></HEAD><BODY> 
<H1>302 Moved</H1> 
The document has moved 
<A HREF="http://www.google.com.au/?gfe_rd=cr&amp;ei=ckz9WMKPDYTr8weL36iABA">here</A>. 
</BODY></HTML> 

renvoie une réponse 302 Moved.

Si vous exécutez la journalisation de débogage activée (paramètre -X pour maven), vous devriez obtenir plus de détails pour savoir pourquoi le vérificateur a traité la demande comme un échec.

0

L'hôte est l'adresse IP ou le nom d'hôte du fournisseur. Donc, si votre fournisseur vous permet de dire quelque part déployé, vous devez fournir l'adresse IP de ce déploiement. Vous ne pouvez pas fournir aléatoirement des noms d'hôte comme google.com.