php
  • http
  • gzip
  • 2016-05-13 5 views 0 likes 
    0

    Unten ist mein Code i ausgegeben werden soll in gzip folgen, so wie richtige Header zu schicken gzip AusgangHttp Birne Anfrage gzip Ausgang

    $file="www.ntravel.ae/ws"; 
    $request='<?xml version="1.0" encoding="UTF-8"?><requestAuditInfo></requestAuditInfo>'; 
    $req =new HTTP_Request($file); 
    $req->setMethod(HTTP_REQUEST_METHOD_POST); 
    $req->addPostData("xml",$request); 
    $reqTime = time(); 
    $req->sendRequest(); 
    echo $data = $req->getResponseBody(); 
    
    +0

    Es ist unklar, was Sie wirklich wollen: Möchten Sie Ihre * Anfrage * komprimieren oder möchten Sie eine komprimierte * Antwort * erhalten? – DaSourcerer

    +0

    Ich möchte eine Anfrage an ntravel senden. wenn ich gzip header in der Anfrage senden werde sie mir Anfrage Antwort im gzip Format geben wie wir in curl curl_setopt ($ ch, CURLOPT_HTTPHEADER, Array ('Accept-Encoding: gzip, deflate')); –

    Antwort

    0

    Von der API, um es Ihnen noch erscheint verwenden HTTP_Request. Dieses Paket hat seine letzte Veröffentlichung in gesehen und ist seit langem durch HTTP_Request2 ersetzt worden. Bitte aktualisiere es so schnell wie möglich.

    Wie für Ihr Problem, ich denke, die addHeader() Methode ist, was Sie suchen:

    $req->addHeader('Accept-Encoding', 'gzip, deflate'); 
    

    In HTTP_Request2 dies durch die setHeader() Methode behandelt wird:

    $req->setHeader('Accept-Encoding', 'gzip, deflate'); 
    

    Über einen entsprechenden Hinweis , HTTP_Request erfordert eine vollständig angegebene URL. www.ntravel.ae/ws sollte wirklich http://www.ntravel.ae/ws lesen.

    Ich bin auch nicht sicher, ob Sie Ihre XML-Payload wirklich so senden möchten. Es sieht für mich so aus, als würde man das im Request Body über setBody() ([2]) speichern wollen.

    Verwandte Themen