使用Google Apps Script调用Bitly API时遇INVALID_ARG_LONG_URL错误求助
解决Bitly API返回INVALID_ARG_LONG_URL错误的方案
问题原因
你遇到的INVALID_ARG_LONG_URL错误并非因为URL过长,而是传入的URL缺少HTTP/HTTPS协议头。Bitly V4 API要求long_url必须是完整的、带协议的有效URL(如https://www.google.com),仅www.google.com会被判定为无效格式。
修改后的代码
function shortenURL() { var longUrl = 'https://www.google.com'; // 补全HTTPS协议头 var shortURL; var options = { 'method' : 'post', 'contentType': 'application/json', 'payload' : JSON.stringify({ "long_url": longUrl // 移除多余的 trailing comma,避免JSON格式错误 }), 'muteHttpExceptions': true, // 开启后可查看完整错误响应,便于排查 'headers': {'Authorization': 'Bearer ' + '你的Bitly授权密钥'} }; Logger.log(longUrl); try { var response = UrlFetchApp.fetch("https://api-ssl.bitly.com/v4/shorten", options); shortURL = response.getContentText(); Logger.log(shortURL); } catch(e) { Logger.log('错误详情:' + e.message); if (e.response) { Logger.log('完整响应:' + e.response.getContentText()); } } }
额外注意事项
- 确认你的Bitly授权密钥有效,且账号拥有创建短链接的权限
- 移除原代码中
payload里long_url后的多余逗号,否则会导致JSON解析失败 - 保持
muteHttpExceptions: true,后续排查问题时能获取完整的错误信息,帮助定位问题
内容的提问来源于stack exchange,提问作者user1355179
相关产品推荐
相关产品推荐

