【发布时间】:2016-07-12 13:54:28
【问题描述】:
我正在尝试使用 inappbrowser 将一些文本和图像发布到 Pinterest,但它会抛出错误“参数'image_url'(值 http:null)不是有效的 URL 格式。”
这里是示例代码。
var pinterestUrl = "http://www.pinterest.com/pin/create/button/";
pinterestUrl += "?url=https://www.google.co.in/";
pinterestUrl += "&media=http://www.google.co.ma/images/srpr/logo1w.png";
pinterestUrl += "&description=Text Description";
var pinterest = window.open(pinterestUrl, '_blank');
如果我将代码从“_blank”更改为“_system”,它在网络浏览器和系统浏览器(iPhone/Android)中运行良好。我尝试使用eventListener“loadstart”检查url,发现inappbrowser会自动添加一些不必要的额外参数,如“创建下一个按钮”。
任何建议都会有所帮助。
【问题讨论】:
-
您是否尝试过在每个查询参数上使用
encodeURIComponent()?必须对查询参数进行编码,以便特殊字符不会弄乱 url 解析。 -
感谢 Zack 的建议。我已经尝试过使用 encodeURIComponent 但在对 inappbrower 进行编码后无法加载 URL 并抛出错误“webView:didFailLoadWithError - 在此服务器上找不到请求的 URL”
-
介意分享尝试中的代码吗?不编码很可能是问题所在,但您可能编码错误。
-
var encodedURL = encodeURIComponent(pinterestUrl); var pinterest = window.open(encodedURL, '_blank');如果我在这里做错了什么,请告诉我。
标签: cordova pinterest inappbrowser