尝试使用Google Apps脚本将图像上传到Graph API时,如何解决“异常:超出限制”错误?

Nebua Ginette Siani

我正在使用Facebook Graph API通过Google Apps脚本创建一个Facebook广告系列。

我需要将图片上传到我的Facebook广告帐户。我已经尝试过将图像字节用作Base64 UTF-8字符串,但是当我调用API时,我得到了:

例外:超出限制:URLFetch URL长度。

基本上,字符串太长。

我正在使用以下代码:

function uploadTest2() {
  var image_id = 'blabla';
  var image_blob = DriveApp.getFileById(image_id).getBlob();
  var input = image_blob.getBytes();
  var docImg = Utilities.base64Encode(input);
  
  var account_id = '1111111111111';
  var facebookUrl = 
    'https://graph.facebook.com/v7.0' +
    '/act_' + account_id +
    '/adimages?bytes=' + docImg +
    '&access_token=' + TOKEN;
  Logger.log(facebookUrl);

  //var encodedFacebookUrl = encodeURI(facebookUrl);
  var options = {
    'method' : 'post'
  };

  var response = UrlFetchApp.fetch(facebookUrl, options);
  var results = JSON.parse(response);
  Logger.log(response);
}

图像不超过5MB,我已经使用在线解码器检查了字节字符串以进行验证。

您对在发布请求中直接使用图片网址有任何想法吗?


第二版代码:

function uploadTest2() {
  var image_id = 'blabla';
  var image_blob = DriveApp.getFileById(image_id).getBlob();
  var input = image_blob.getBytes();
  var docImg = Utilities.base64Encode(input);
  
  var account_id = '1111111111111';
  var facebookUrl = 
    'https://graph.facebook.com/v7.0' +
    '/act_' + account_id +
//    '/adimages?bytes=' + encodedImage +
//    '&access_token=' + TOKEN;
    '/adimages?access_token=' + TOKEN;
  Logger.log(facebookUrl);

  //var encodedFacebookUrl = encodeURI(facebookUrl);
  var options = {
    'method' : 'post',
    'payload' : image_blob
  }; 

  var response = UrlFetchApp.fetch(facebookUrl, options);
  var results = JSON.parse(response);
  Logger.log(response);
}
马修·兰德沃尔夫

为了向图像发出后期请求,UrlFetchApp.fetch()您必须提供方法,有效负载(即您想要的主体POST),有时还要提供内容类型(如果我们传递的不是JavaScript对象)。

如果要传递base64Encode从Blob获得的对象,则应对此JSON对象进行字符串化。

最初的海报所缺少的是传递有效载荷,在我的贡献和他的工作之后,他终于通过编辑options变量解决了这个问题,例如:

var options = {
   'method' : 'post',
   'contentType': 'application/json',
   'payload': JSON.stringify({"bytes": docImg,"name" : 'Test'})};
   }

文档参考:类UrlFetchApp

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用Apps脚本将图像上传到Google Spreadsheet

来自分类Dev

使用Google Apps脚本将文件从Google驱动器上传到外部API

来自分类Dev

如何使用Apps脚本将云端硬盘中的现有文件上传到云端硬盘

来自分类Dev

尝试将图像上传到Firebase时出现错误(Swift)

来自分类Dev

尝试使用Node js将多个图像上传到AWS时遇到错误

来自分类Dev

尝试将图像上传到 Cloudinary 时收到 TypeError

来自分类Dev

使用List.RootFolder.Files.Add(C#)将文件上传到SharePoint时如何解决异常

来自分类Dev

尝试使用此代码将图像上传到网页上,但会不断出现错误

来自分类Dev

尝试使用按钮将图像上传到我在 CodeIgniter 中的数据库,但出现错误

来自分类Dev

如何使用 JVM API 自动将图像上传到 commercetools

来自分类Dev

使用Microsoft Graph API将文件上传到SharePoint Online

来自分类Dev

使用Graph API将照片上传到Facebook

来自分类Dev

如何将许多图像上传到Google Photo?

来自分类Dev

如何使用XAMPP将Ajax文件上传到php脚本

来自分类Dev

使用签名的URL将图像文件上传到Google Cloud时出现CORS错误

来自分类Dev

使用REST API将图像上传到Twitter

来自分类Dev

使用 Java API 将图像上传到 Cloudinary

来自分类Dev

如何使用Golang将图像上传到Firebase存储

来自分类Dev

如何使用Alamofire将SwiftUI图像上传到后端

来自分类Dev

如何使用Node将图像上传到S3

来自分类Dev

如何使用Google App Engine将图像上传到Google Cloud Storage?

来自分类Dev

使用Python脚本将图像上传到Slack频道

来自分类Dev

错误UPLOAD_ERR_INI_SIZE值:1;尝试使用php将图像上传到FTP时

来自分类Dev

使用“上传”按钮将多个图像上传到页面时出现问题...

来自分类Dev

使用Antd上传操作将图像上传到Firebase存储时出现问题

来自分类Dev

使用“上传”按钮将多个图像上传到页面时出现问题...

来自分类Dev

尝试将多个图像上传到 Firebase:SWIFT 4、FIREBASE 5.0.0 中的 2 个错误

来自分类Dev

如何从Node中的图像URL将图像上传到Google Cloud Storage?

来自分类Dev

使用php将图像上传到sql数据库时显示错误

Related 相关文章

  1. 1

    使用Apps脚本将图像上传到Google Spreadsheet

  2. 2

    使用Google Apps脚本将文件从Google驱动器上传到外部API

  3. 3

    如何使用Apps脚本将云端硬盘中的现有文件上传到云端硬盘

  4. 4

    尝试将图像上传到Firebase时出现错误(Swift)

  5. 5

    尝试使用Node js将多个图像上传到AWS时遇到错误

  6. 6

    尝试将图像上传到 Cloudinary 时收到 TypeError

  7. 7

    使用List.RootFolder.Files.Add(C#)将文件上传到SharePoint时如何解决异常

  8. 8

    尝试使用此代码将图像上传到网页上,但会不断出现错误

  9. 9

    尝试使用按钮将图像上传到我在 CodeIgniter 中的数据库,但出现错误

  10. 10

    如何使用 JVM API 自动将图像上传到 commercetools

  11. 11

    使用Microsoft Graph API将文件上传到SharePoint Online

  12. 12

    使用Graph API将照片上传到Facebook

  13. 13

    如何将许多图像上传到Google Photo?

  14. 14

    如何使用XAMPP将Ajax文件上传到php脚本

  15. 15

    使用签名的URL将图像文件上传到Google Cloud时出现CORS错误

  16. 16

    使用REST API将图像上传到Twitter

  17. 17

    使用 Java API 将图像上传到 Cloudinary

  18. 18

    如何使用Golang将图像上传到Firebase存储

  19. 19

    如何使用Alamofire将SwiftUI图像上传到后端

  20. 20

    如何使用Node将图像上传到S3

  21. 21

    如何使用Google App Engine将图像上传到Google Cloud Storage?

  22. 22

    使用Python脚本将图像上传到Slack频道

  23. 23

    错误UPLOAD_ERR_INI_SIZE值:1;尝试使用php将图像上传到FTP时

  24. 24

    使用“上传”按钮将多个图像上传到页面时出现问题...

  25. 25

    使用Antd上传操作将图像上传到Firebase存储时出现问题

  26. 26

    使用“上传”按钮将多个图像上传到页面时出现问题...

  27. 27

    尝试将多个图像上传到 Firebase:SWIFT 4、FIREBASE 5.0.0 中的 2 个错误

  28. 28

    如何从Node中的图像URL将图像上传到Google Cloud Storage?

  29. 29

    使用php将图像上传到sql数据库时显示错误

热门标签

归档