2013-02-25 44 views
7

Làm cách nào để đặt tiêu đề ngôn ngữ cho yêu cầu cURL của tôi? ví dụ. bây giờ tôi nhận được trang chủ của facebook.com bằng tiếng Hà Lan, có lẽ vì máy chủ của tôi ở Hà Lan/ngôn ngữ mặc định được gửi bằng tiêu đề? ..cUrl đặt tiêu đề ngôn ngữ

Tôi thích tiếng Anh trước tiếng Hà Lan trong trường hợp này vì vậy tôi đã cố gắng thiết lập một người bảo trợ trong curl nhưng tôi không hiểu sao? Tôi phải làm gì sai hoặc tôi phải làm gì?

(zend ký hiệu)

CURLOPT_HTTPHEADER => 'Accept-Language: en-US;q=0.6,en;q=0.4', 

Cảm ơn trước!

Trả lời

3

Bạn phải thêm tùy chọn tiêu đề trong yêu cầu của mình.

Bạn sẽ có một cái gì đó như thế này:

$options = array(
    CURLOPT_RETURNTRANSFER => true,  // return web page 
    CURLOPT_HEADER   => false, // don't return headers 
    CURLOPT_FOLLOWLOCATION => true,  // follow redirects 
    ..... 

$ch  = curl_init($url); 
curl_setopt_array($ch, $options); 
$content = curl_exec($ch); 
$err  = curl_errno($ch); 
$errmsg = curl_error($ch); 
$header = curl_getinfo($ch); 
curl_close($ch); 

Tất cả bạn phải làm là thêm dòng này vào $ tùy chọn mảng của bạn:

CURLOPT_HTTPHEADER  => array("Accept-Language: en-US;q=0.6,en;q=0.4"), 
9

tôi đến tại trang này tìm kiếm một cách để vượt qua tiêu đề ngôn ngữ để cuộn tròn ở dòng lệnh. Nếu bạn muốn thiết lập tiêu đề trong một bash một lót, sử dụng -H Accept-Language

$ curl -s -H 'Accept-Language: es' -XGET "http://www.google.com" 

<!doctype html> 
    <html itemscope="" itemtype="http://schema.org/WebPage" lang="es-419"> 
    <head> 
     <meta content="text/html; charset=UTF-8" http-equiv="Content-Type"> 
     <meta content="/logos/doodles/2016/united-states-elections-2016-4829342880235520-hp.gif" itemprop="image"> 
     <meta content="Tu voz importa. �Encuentra tu casilla y vota! g.co/elections/dondevotar #Everyonein2016 #GoogleDoodle" property="og:description"> 
     ... 
+0

hữu ích để thêm '-v' để xem những gì tiêu đề được gửi và nhận (nếu bạn đang tìm kiếm nếu máy chủ chuyển hướng bạn với quyền Ví dụ: mã HTTP theo ngôn ngữ được chỉ định). –