2015-08-21 4 views
1

Я посылаю запрос на мой API следующим образом:Отправка заголовка User Agent через UrlFetch API на GAE

$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 является то, что делает запрос.

Каков наилучший способ для этого?

ответ

2

Добавьте заголовок User-Agent рядом со своим Authorization:Basic в контексте контекста потока под ключом http. См http://php.net/manual/en/context.http.php подробности

Edit: Google App engine information

Headers источник идентификации запроса

Следующие заголовки указывают идентификатор приложения запрашивающего приложения:

  • User-Agent. Этот заголовок может быть изменен, но App Engine добавит строку идентификатора, чтобы серверы могли идентифицировать запросы App Engine. Приложенная строка имеет формат «AppEngine-Google» (+ http://code.google.com/appengine; appid: APPID) », где APPID является идентификатором вашего приложения.

  • X-Appengine-Inbound-Appid. Этот заголовок не может быть изменен и добавляется автоматически, если запрос отправляется через службу URL Fetch, если для параметра followirect перенаправления установлено значение False.

+0

'Это значение будет использоваться только если агент пользователя не указан в опции контекстного заголовка above.' - Поэтому я использую Google App Engine и отправляет заголовок агента пользователя, просто не пользовательский агент лица, отправляющего запрос, а сервер, отправляющий GET – bryan

+0

. Это еще одна история. Сервис URLFetch приложения Engine разбивает пользовательский агент. К сожалению, вы не можете переопределить это. –

+0

Итак, есть ** нет ** способ отправить необходимую информацию? – bryan

Смежные вопросы