IOS Gmail API - 如何获取 "messageId" 带有附件的电子邮件

IOS Gmail API - How to get "messageId" of an Email with an attachment

我正在为我的 iOS 应用程序之一使用 Gmail API。Gmail API。我已成功授权用户进行登录过程。然后得到所有邮件的列表(Users.threads.list),结果如下图

现在我需要收到一封带附件的邮件 (User.messages.attachment.get)。为此我需要传递 3 个参数,即 emailId、messageId、id。

我的问题是"How to get this messageId"?

谢谢 :)

你在第一个请求中得到的threadId是标识线程的Id,与线程中的第一条消息相同。与附件无关

我收件箱中的最新消息有一个附件。我会通过列出邮件来获取它:

GET https://www.googleapis.com/gmail/v1/users/me/messages?maxResults=1&access_token={YOUR_API_KEY}

响应:

{
 "messages": [
  {
   "id": "14e8bf63dd00a52f", // This is the message id!
   "threadId": "14e8bf63dd00a52f" // Since it is the first message in the thread, 
                                  // the threadId is the same.
  }
 ],
 "nextPageToken": "01097010197696465829",
 "resultSizeEstimate": 3
}

然后我使用此 ID 获取邮件的附件 ID:

GET https://www.googleapis.com/gmail/v1/users/me/messages/14e8bf63dd00a52f?fields=payload%2Fparts%2Fbody%2FattachmentId&format=full&access_token={YOUR_API_KEY}

响应:

{
 "payload": {
  "parts": [
   {
    "body": {
     "attachmentId": "ANGjdJ9UyXwpB8pVWgFrzmC3UN92YdlMTEF2-At-0zWG88keYXomvYLxZFMoOq7YVC-14VbOqgssCueyDzo103M28HNnUAC-2KSNF5yIK_74BuNqlMXCUar3OFAwVjsS8s8nWQjkreVusTB5Y4XhHNaj7Z7cCKuRFQBSABLfCF75boSHvHSD1RDeOI33e-7y-1JAgn3VN-AFrOQKVEsclVr_QHt2298tLRhyVzJ30ePnOFnZoyaP_uP54XZHMxXsm9YdfzVKtwFiwqlm4IYjQYX5_eNWUaeqbemBot43fQ"
    }
   }
  ]
 }
}

然后,最后,我使用邮件的 Id 和 attachmentId 来获取附件:

GET https://www.googleapis.com/gmail/v1/users/me/messages/14e8bf63dd00a52f/attachments/ANGjdJ9UyXwpB8pVWgFrzmC3UN92YdlMTEF2-At-0zWG88keYXomvYLxZFMoOq7YVC-14VbOqgssCueyDzo103M28HNnUAC-2KSNF5yIK_74BuNqlMXCUar3OFAwVjsS8s8nWQjkreVusTB5Y4XhHNaj7Z7cCKuRFQBSABLfCF75boSHvHSD1RDeOI33e-7y-1JAgn3VN-AFrOQKVEsclVr_QHt2298tLRhyVzJ30ePnOFnZoyaP_uP54XZHMxXsm9YdfzVKtwFiwqlm4IYjQYX5_eNWUaeqbemBot43fQ?access_token={YOUR_API_KEY}

响应:

{
 "size": 3115,
 "data": "iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAE1mlDQ1BJQ0MgUHJvZmlsZQAAeJzllWtMk3cUxp_37R2otFCLTNFXxhBZYR2grEII0CEDEbBUoIx09iZUW3jzUhFkUxlG8IYXmMrChhIUlWwuKA4ZzhsToolDzJDhvGA13hBvgwREuw9d5INxyT57Pj15knNyzj_5_R-Af1RH0xYSgDXPxqjiY6lMTRbF6wUXfEjgCU-doYCOSU1NwltrpBcEAFwO0tG0pSlpvulm6_X5vgP6DY-OBxnf3gcAEDKZmiyAoABIcpw6DIBE79SfAZCstNE2gMgGIDHk6owAQQOQMWqVEiBqAYznqFVKgNwNYFyvVikBVjWA8UJDjg1gbwMgzzOa8wD2KYA1yWgqMAC8bgAbDTRjA_jZAIKs1nwjwN8MICBTk0U518xfBygOAqTPhLcEwE85gPTxhDdLBUi9gDbphPd8BggAxCc_FywNDQEAEOI2gO_ncAzVAC6VwMt5DseY2OEY7wE4MqBpumEFU_jvGxUBYMEFXpiNGGhRikPoJ8REClFNDJDh5E7yFYtmDbIZDpuzl5vAfcU7yd8sMLkkuka6zRMqJ2W4F4rqxY88MyU3paVT5nqPTu3w2TojdSbbt92vxD82wH327Q9PB-3_qOrjitDyOZXhexTtEfYoaXR6bP2nL-KXJPQkpST3LbKq3dJbNOZsf-2grs24LceyLMUaTvsVSAp5ReMlT1ffKb2yrqu8deOBLbu3VVSV7KRrzLVL68z1zL6yA983dfw43BzWUtZqb1988trZFZ3S82cuFvdE9gr_HLzWP9B3594D16GYZ1tGnrxY7nC8cbsbpkKOBbDiG3RglJhLrCLOkd6kjexjxbHa2Ar2aU4a5zF3J28-n-B3Cna5MK4ZbvHCmElx7iqRWVzp0SFxnayXnp8S4901VetDTD9C0b6Rfl7-xKyxQMgkwaFybUhV2KVwqUIf0RzFjs6MPRrnE1-VODmpPiVi0Q31loy4LE72xS--0xeYknODl4usw3R_wa-Fe4vXfqlZIysdWXes3Lpx2ubftubu4FU37IquuV67us5v76WG8sbEQ9N-wOHRI4Jjc46vaR88taYjoPPGhcbfyy-XXam7ar-Zdnv4fvfQw7-TRl-8cTsJASR4H-FIRR524Bc8ICgim9hDPCSjyBryJWs5y842sp9yKriB3D7edn6GIMCF4zLkesttQDjoDpGPWOXRKPGe3Oi10Jv3Xve0huklVIpvoJ-HPy9AEOglkwenydeGtIQ9DQ9VFEeciRJGp8fuj0O8MaEnKTH5_CJ12t30rzUffN6tLdNFGsaXnjFXWrT5oYzQdn9l16qDX21am1eWvD5wA3vT1crm7RXVS3YpvvWqHauz1_-xr_tAX9Ojwx7NCS3VrSPtzCnB2aOdyy4EXXT02Hv_6n94Q2LX3D0xGPfk2XDX2AWHw8mqkxDnnwIA90on9PPc15oAnDwDAIsLNJQDi-3AgnNATSLgHwl4GoFUIaBWgLhlADEwE8QDMVgoAvmuUfWukfSu0QM4Mw0AIDIv1Bkopc5i1jM6m-l1DItgxkLoYAAFJXSwwAw9GOhggwnG_2r9f2UzFdkAQJlPFzPmnFwbFUPTFhOlzLfSK2wmRkYl5BmCZVSIXB4KAM7cBQCuCKjNAoATz7RvzP0HbnfbUKLmT0AAAAcQSURBVFiF7ZZbiF1XGcd_67Iv55w5Z66ZadI4aWw1xU6xoAmMpKZY-yREERofFfoiBS_0QehbfapoH0uLiOCrjNBaEZSWktBCoEZTTVNtm6bJtE06M2cu57LP3mvvvdbnw0xLSWeKRcEHXfA97LX35vfjz9rf_uD_6399qU_y8NYzRw4nw-pb5O4-VfhxXHkXlUfln3055Lf0qCefdarz64nHHnvrPyoweP7oCePrR01oLdrpL6Pm7kU1b4bGDAiQ9ZGNHvLXV_F_W0a29NmybDzc_sX3z_xbAnLx_nhrdO2J1M49kMx8HTV9L-gUqTLIupCvQxCIDqJaMxA3wHnk_CWqF14nX82fHF_v_FAtnSo_scD1N-7eZyu71G4unIgnT4GdhcFlZO3PyNo_oLuMDLagrFHVIqpxBDV9BA7dhpqdRdZH1M--xvDy5hnTVd8cXzq18S8LrF68ZwyTPj_WOXw06dwPQZCNM0j3Zeh1oZ_DsIBRBa5G9Y-BO4Cq9kG6H3XoMHz-0yCG8tlL9K_2_uS67sSnlk7lN7L0bgKbNY_bZvNoMv5VYAsZPoW486BHECeQNiEdh3hsp9qoqAWmCTnI613k9FvQr4mPHSZptY-GdvzEbqyPCJw794Xj2OrbSWsfojxS_hFR70KiodmCZgfVnNiu1gyqMY1qTEBjApIOJGNACisl8tIqBE1regYt6Xf-fv_vFm_k2Rs3qrp-1CSgk2OU7jQqvIeNDKgUpSxgdiqACmAqkFmUmUF0B1wTdAwuhg2Q80P0HTOkrw7oFxs_Be7eU-DpM7ffWZv6eJxGVOEt6voykTJAjI3S7YhNCiZGGQtWIK7BHAA7ibJNxMZABBLByMLbgjSFlpnElKPj5xafvvOLZ79xYVeBusxOhnYCyRTD6i9olRFoEFRAVISNWmgzgbJtsClEGtKAsgcgakMco7RBgganoTTQN3DBY1sdbLFJXRZfA3YXcJX7WlCCp0VZvYExEVYpapUQVCComDjqYKJ9EHVQcQxFALsfkgSMhlqhBiCFhqGGoULWFByJiUYtatc7CfxkV4FR4Y64AKNqkzr0sZISaUUtMcGWBBVARSSmg4lmIWqCDSgzjRgDTsADuYJMYKBhoJAM_IaCUUrh5MieZyCrqqmsDPSLKwRVEEnAKEVkYirJqCUnRCWiINExttFBiQBjqJFCHDASwhBkCJKBjKDOhfrtGlcqylKm9hYoavqFJ81XMJHDBo_VChsSXMhwMqRiSM2A2o6ITZM0uw0pBMkg5OALITghVCA1-Drgvafs1QwkkIlnbwFXb2wM9VQy7tFSYSOF0RVGHJE4EuVIdE6qHVaVeBRjk2D7iqgvKAtiFGIVYgQVQbAKbwSnatZVRl_cxp4CPadeU0MWG06jjNpuUwoQUAIqBKwXjPbESmhLxIQIooAEdAqquf216haoXFClJ1DjcKzoHn1TvranQL_yfygzuxjlESZq4RCCjqmJ8dpSB4N4iJUwKTClLYMAUkEAJN6G27Zgh4J1AeVrdFJRuCErUZ-8Ln-_p0BB_FQ20j-u1h1T6RybZDgVU0YxpUooiVBY2ih6QZMpQy-AlOA9KA06EWxLiDseW1ZEwZGqnLXlVbrRAKmrZ_YUWHqovHDPz8Ze7HXDcT09wUC16KpARpNCYgIxsRiGIWKkIyql2apBl4LUICIYEzCJJ27UJE3HmC2Jqj5X5TpVPHrxyfPfvbCnAMDARw_7oX2BFcfEwXmyMGTNW3KboLylYWKcjai1RYCkrjGlbPeAOqBDwFKRRBWd8RLrc65fvcaa2SRK6x_dyDM3blx_rlhunpi4pV-quxrN_SSNObbqiGFIqUKLECbxfhrqDr4aoy4thfOMipqiqHCuxFeOGMd4oyQbrbJ87TJZOfzVb577weM38j6SAMDl-tr3poef-Zxe7h67mRlunZzjXe_p1jFOWZQRCu3RklN5g64EVQRs6Wl4TysJTCeeYXeFa2tvslluvlS11IO7sT6SAACnKfP74t9mfVksSzM_k-xjvnmQm-KbaEubOIyhqhicRZeBpK6YwDNrPPMNmDI52dZ7XLl6iXdXVs_o2pw8u_TQYDfUx0_Fj9wR66r1xER77oHbDywwP3crzdYscTwJqo0OTXSIiEWw3qPKkrzf4_o713nzyjsMe_1fRj3_4MWlRz7RUKqBCEiBFtDm5MJXuO3Ag53x_QuHpm_h4NQ8Y-k00-kEBkOvn1PkI1a767y3tk7W3XyluHzp5-unl04DQyADRoBj-3clHydgPgSfAKaANtBgYf5wtLDwpWh6_51R1GzaZPKQFovKsuVQhsx3V18ZXTh31l26eAUodsBbO9XfufZs9609BdROAu-n0AR2xpwP5rH3m_T778uHKuxAaqAE8h0ZB1Q79z9I4L--_gmfbXbWAo5BKAAAAABJRU5ErkJggg=="
}