Web.Contents + Uri.EscapeDatastring = 解析器错误。 PQ 将“%2F”转换为“/”但不应该

Web.Contents + Uri.EscapeDatastring = PARSER ERROR. PQ converts "%2F" to "/" but shouldn't

如果我向 Google 网站站长工具 API(Search Console)发送查询,它 returns 一个错误 - 404 状态。

这里是查询

https://www.googleapis.com/webmasters/v3/sites/www.kvadroom.ru/urlCrawlErrorsSamples/obyavleniya%2Fprodaetsiya-taunhaus-sinkovskoe%2F201437169.html?platform=web&category=soft404&access_token=ya29.FgJLUjBKLvoQWXEJN6MsHPl4awqXr33uk8wIiCN_z4WWp4175JyrQeQRjmhGfIU6pMbF

(当然token已经过期了,但是用的时候是真的,反正不是凭据的问题)

如您所见,查询字符串的一部分被转义了 - 这是 GWT 的要求 API - https://developers.google.com/webmaster-tools/v3/urlcrawlerrorssamples/get

如果我将查询字符串粘贴到浏览器的地址栏,我会得到状态 Ok 200 和 JSON 响应。但是,如果我在 PQ 的 Web.Contents 中使用相同的查询,PQ 会错误地解析字符串 - 它将“%2F”转换(但不应该)为“/”

它说

是bug还是我做错了什么?

假设它只发生在 /path/ 中使用转义字符串而不是 ?params 中,即在问号之前

更新:这是我们正在使用的 URL 库的一个(不需要的)功能:https://msdn.microsoft.com/en-us/library/ee656542(v=vs.110).aspx

我们目前无法支持这种情况。

对于任何对此感到沮丧的人,请考虑在 https://ideas.powerbi.com

开始一个话题

不错的发现!

我找不到任何解决方法来让 Power Query 发出路径中包含“%2F”的请求。

很抱歉。我会在我们团队的积压工作中添加一个错误。