Обновление фото гугл контакты api
Я пытаюсь обновить фотографию контакта Google с помощью API контактов Google.
Я попытался использовать axios (библиотеку узлов для выполнения HTTP-запросов), чтобы получить байты изображения из URL-адреса, а затем обновить фотографию, отправив первое изображение, используя следующий URL-адрес: https://www.google.com/m8/feeds/photos/media/default/CONTACT_ID по умолчанию / CONTACT_ID
как написано в API контактов Google
Вот пример кода:
`axios.post('https://www.googleapis.com/oauth2/v4/token', querystring.stringify(formData), {
headers: { "Content-Type": "application/x-www-form-urlencoded" }
}).then(function(response) {
axios.get('http://www.pngall.com/wp-content/uploads/2016/07/Facebook-Download-PNG.png')
.then(res => {
axios.put('https://www.google.com/m8/feeds/photos/media/default/66b5930a931571', res.data, {
headers: {
// 'If-non-match': 'S0wCTlpIIip7ImA0X0QI',
'Content-Type': res.headers['content-type'],
'Authorization': 'Bearer ' + response.data.access_token,
'GData-Version': '3.0'
}
}).then(res => {
console.log(res);
}).catch(res => {
console.log(res.response.data) // invalid image file error 400
})
})`
Первый пост-запрос - получить код токена, а оферту - изменить фотографию.
Я получаю код состояния 400 с ошибкой "неверный файл изображения".
Я тоже пытался сделать что-то на python, но я получил ответ из библиотеки gdata:
gdata.client.RequestError
RequestError: Сервер ответил: 404, фотография не найдена