通过GAE上的URLFetch API发送用户代理标头

时间:2015-08-21 18:41:21

标签: php google-app-engine

我正在向我的API发送请求,如下所示:

$context = stream_context_create(
    array(
        'ssl' => array('verify_peer' => false,  'allow_self_signed' => true),
        'http' => array('method' => 'GET', 'header'  => "Authorization:Basic " . base64_encode($token.':'))
    )
);
$resp = file_get_contents('https://api.site.com/test', false, $context);

if(!preg_match("/200 OK/", $http_response_header[0]))   http_response_code(400);
else                                                    echo $resp;

但是,我想让api.site.com知道我的HTTP_USER_AGENT是在发出请求。

实现这一目标的最佳方法是什么?

1 个答案:

答案 0 :(得分:2)

User-Agent键下的流上下文选项中,在Authorization:Basic旁边添加http标题。有关详细信息,请参阅http://php.net/manual/en/context.http.php

修改:Google App engine information

标识请求源的标头

  

以下标题表示请求应用的应用ID:

     
      
  • 用户代理。可以修改此标头,但App Engine将附加标识符字符串以允许服务器识别App Engine请求。附加的字符串格式为" AppEngine-Google; (+ http://code.google.com/appengine; appid:APPID)",其中APPID是您应用的标识符。

  •   
  • X-的AppEngine-入站-APPID。此标头无法修改,如果在以下重定向参数设置为False时通过URL提取服务发送请求,则会自动添加此标头。

  •