我想使用urlfetch来填充包含页面数据的电子表格,但我尝试使用的URL会返回错误作为无效参数。我认为问题是我在URL中使用了被误解的字符(例如引号和括号)。
我尝试使用下面的命令对URL进行编码,但我假设我对某些字符进行了双重编码,这导致了问题。
var encodedURL = encodeURIComponent(pageURL)
答案 0 :(得分:17)
尝试使用
baseURL + encodeURIComponent(parameterString)
如果包含要传递给基本URL的参数,则要查询的是传递给encodeURIComponent函数的值。这篇文章可能对您有用:
如果您对整个网址进行编码,就像您在上面所做的那样,那么您编码的不仅仅是参数,我认为这些参数就是问题所在。
答案 1 :(得分:2)
您个人可能不需要答案,但是我为需要的人写信。 为了对GitLab进行成功的API调用(API v4),您只需要对“变量”进行编码。参见下文:
var url = baseUrl + projectId + "/repository/files/" + encodeURIComponent(pathAndFileName) + "?branch=" + encodeURIComponent(branch) + "&author_email=" + encodeURIComponent(authorEmail) + "&author_name=" + encodeURIComponent(authorName) + "&content=" + encodeURIComponent(content) + "&commit_message=" + encodeURIComponent(commitMessage);
pathAndFileName
是前面定义的变量。