Опитвам се да използвам API на Gmail, за да получа имейла на потребителя, да взема темата и тялото на съобщението и след това да го покажа на уеб страница. Ще правя други неща с него, но това е частта, с която изпитвам затруднения. Използвам Angular.js.
Ето моето API извикване:
function makeApiCall() {
gapi.client.load('gmail', 'v1', function() {
var request = gapi.client.gmail.users.messages.list({
labelIds: ['INBOX']
});
request.execute(function(resp) {
var content = document.getElementById("message-list");
angular.forEach(resp, function(message) {
var email = gapi.client.gmail.users.messages.get({'id': message.id});
// var raw = email.payload.parts;
// console.log(raw);
content.innerHTML += JSON.stringify(email) + "<br>";
})
});
});
}
Така че gapi.client.gmail.users.messages.list
връща масив от моите съобщения с техните идентификационни номера. Това работи.
Извикването на gapi.client.gmail.users.messages.get({<specific message ID>})
извежда това - {"B":{"method":"gmail.users.messages.get","rpcParams":{},"transport":{"name":"googleapis"}}}
.
Не съм сигурен какво е това, но опитът да се получи полезният товар на съобщението (email.payload.parts
), води до undefined
. И така, как мога да получа съдържанието на съобщението?
Освен това бих предположил, че ако мога да получа съдържанието на съобщението, тогава ще трябва да декодирам Base64 съдържанието, за да извлека малко английски от него. Всякакви предложения за това също биха били от голяма полза. Намерих това: https://github.com/kvz/phpjs, но тъй като не съм сигурен как да продължа относно получаването на съдържанието на съобщението, за да мога да опитам да ги декодирам, така че не съм сигурен дали този php.js е от помощ в това отношение.