как запросить addDelegates? Ошибка 415

1

мне может потребоваться доступ к api-настройкам api с POST-действием в php.

Но я всегда получаю эту ошибку: не удалось открыть поток: HTTP-запрос не удался! HTTP/1.0 415 Неподдерживаемый тип носителя

Вот мой код:

      public function addDelegates($account,$delegates,$domain,$tokken) {

foreach ($delegates as $key => $value) {
                    sleep(5);
      $url = "https://apps-apis.google.com/a/feeds/emailsettings/2.0/".$domain."/".$account."/delegation";
$requestXML = '<?xml version="1.0" encoding="utf-8"?>
                            <atom:entry xmlns:atom="http://www.w3.org/2005/Atom" xmlns:apps="http://schemas.google.com/apps/2006">
                                <apps:property name="address" value="' . $value . '" />
                            </atom:entry>';
$requestHeaders = array(
    'Content-type: application/xml+atom',
    'Accept: application/xml+atom',
    sprintf('Content-Length: %d', strlen($requestXML))
);

$context = stream_context_create(
                array(
                    'http' => array(
                        'method'  => 'POST',
                        'header'  => implode("\r\n", $requestHeaders),
                        'content' => $requestXML,
                    )
                )
            );
$responseXML = file_get_contents($url, false, $context);
  } 

Я видел, что эта ошибка означает, что я могу отправить неправильный тип контента. Но я пробовал приложение /json, application/xml, text/xml и т.д.

Ничего не известно о том, какие данные мы должны отправлять в emailSettings api doc:/

Заранее спасибо.

  • 0
    Я думаю, что тип контента в вашем размещенном коде не является правильным. измените тип содержимого на «application / atom + xml» вместо application / xml + atom. Это должно решить вашу ошибку 415.
  • 0
    Спасибо ! Это было просто так ... И я потратил один долгий день, работая над этим, и, наконец, согласился поделиться своей проблемой здесь. Какая удача, ты был там, чтобы ответить.
Показать ещё 1 комментарий
Теги:
google-admin-sdk

1 ответ

1
Лучший ответ

Я думаю, что тип контента в вашем опубликованном коде неверен. измените тип содержимого на "application/atom + xml" вместо application/xml + atom. Это должно устранить вашу ошибку 415.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню