2011-05-06 3 views
1

이 서버 측 Google 애널리틱스를 발견했으며이를 C# 코드로 변환하려고했습니다. 모든 것이 잘 진행되고 있지만 Zend_Http_Client가 .net의 관점에서 무엇인지 확신 할 수 없습니다.C#의 Zend_Http_Client()와 동일한 코드

젠드 프레임 워크를 사용하여 PHP로 작성된 참조 http://code.google.com/p/serversidegoogleanalytics/으로 코드를 사용하고 있습니다. 여기

public function getHttpClient() { 
     if(!$this->httpClient instanceof Zend_Http_Client) { 
      include_once("Zend/Http/Client.php"); 
      $this->httpClient = new Zend_Http_Client(); 
      $this->httpClient->setConfig(array(
       'maxredirects' => 1, 
       'timeout'  => 4 
      )); 
      $this->httpClient->setHeaders('Referer', "http://" . self::$trackingDomain . "/"); 
      $this->httpClient->setHeaders("User-Agent", "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.7) Gecko/2009021910 Firefox/3.0.7 (.NET CLR 3.5.30729)"); 
      $this->httpClient->setCookieJar(); 
     } 
     return $this->httpClient; 
    } 

private function requestHttp($url, $getParams = array()) 
    { 
     $client = $this->getHttpClient(); 
     $client->setUri($url); 
     $client->setParameterGet($getParams); 
     $response = $client->request(); 

     if ($response->isSuccessful()) 
      return true; 
     else 
      return false; 
    } 

내 주요 관심사는 setCokieJar() MaxRedirects, 및 대기 시간, setParameterGet() setURI() 요청 (인 방법에는)

그렇다면 .net에 해당하는 항목은 무엇입니까? WebClient? HttpWebResponse? HttpWebRequest? 아니면 다른 것입니까?

도움이 될 것입니다.

답변

1

내가 전에 몇 가지 성공 System.Net.WebClientSystem.Net.WebRequest를 사용했습니다 (나는 WebResponse 그냥 WebRequest에 대응 믿는다). WebClient은 사용하기가 쉽지만 옵션 수가 적습니다.

+0

Zend 클래스에서 setParameterGet()을 사용하여 추가 매개 변수를 추가하면 운이 좋습니다. 내가 묻는 이유 인 Google 분석 정보를 보내야합니다. – Bombcode

+0

@Bombcode - 어떤 종류의 추가 매개 변수입니까? 퀘스트 링? 형태? 쿠키? HTTP 헤더? –

+0

'GET '요청은 URL에 물건을 집어 넣는 것처럼 간단합니다. 나는'POST' 요청을 믿는다. (누군가 틀렸다면 나를 정정한다.) ['UploadString'] (http://msdn.microsoft.com/en-us/library/0645045y.aspx)을 사용하고 문자열을 원하는 쿼리 문자열에 추가하십시오. (이상한, 정말, 다시, 누군가가 더 나은 방법이 있다면 나를 수정하십시오.) –

0

올인원 코드를 찾을 수 없을 것이라고 생각하지만 WebClient은 출발점으로 가장 좋습니다. HttpWebResponseHttpWebRequestWebClient보다 약간 낮은 레벨입니다. WebClient에는 다른 것들 사이에서 HTTP 요청을 만들기위한 훌륭한 래퍼가 있습니다.

+0

내가 HttpWebRequest와 HttpWebRequest를 msdn에서 체크 아웃했을 때 정말 좋게 보였지만 추가 매개 변수를 추가하는 방법을 알지 못했습니다. – Bombcode

관련 문제