在做weibo分享的时候遇到的问题,分享一下:
1. 新浪微博的分享,如果内容里面包含话题,如“#。。。#”之类的,作为分享的内容直接放在url里面是有问题的,在弹出的分享页面里输入框没有文字,需要使用encodeURIComponent()编码一下;
2. 腾讯微博的分享,如果分享的链接中含有锚点“#。。”的,需要将分享的页面链接先encodeURIComponent()编码一下,而分享的内容却不需要用encodeURIComponent();
ps1:
encodeURI() 函数可把字符串作为 URI 进行编码。
说明
该方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码: - _ . ! ~ * ' ( ) 。
该方法的目的是对 URI 进行完整的编码,因此对以下在 URI 中具有特殊含义的 ASCII 标点符号,encodeURI() 函数是不会进行转义的:;/?:@&=+$,#
encodeURIComponent() 函数可把字符串作为 URI 组件进行编码。
说明
该方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码: - _ . ! ~ * ' ( ) 。
其他字符(比如 :;/?:@&=+$,# 这些用于分隔 URI 组件的标点符号),都是由一个或多个十六进制的转义序列替换的。
提示:如果 URI 组件中含有分隔符,比如 ? 和 #,则应当使用 encodeURIComponent() 方法分别对各组件进行编码。
ps2:
新浪微博分享的图片抓取
http://www.75team.com/archives/329
相关推荐
encodeURI和encodeURIComponet函数都是javascript中用来对URI进行编码,将相关参数转换成UTF-8编码格式的数据。URI在进行定位跳转时,参数里面的中文、日文等非ASCII编码都会进行编码转换
encodeURI和encodeURIComponent以及escape,这三个都是用来编码的,本篇文章给大家介绍encodeURI和encodeURIComponent以及escape的区别与应用,感兴趣的朋友一起学习吧
一、前言 讲这3个方法区别的文章太多了,但是大部分写的都很绕。本文试图从实践角度去讲这3个方法。 二、escape和它们不是同一类 简单来说,escape是对字符串(string)进行...三、最常用的encodeURI和encodeURIComponent
在进行SaaS前端开发的时候,大家经常会用到两个JavaScriptNative函数:encodeURI 和 encodeURIComponent。这篇文章详细解释这两个函数的用途并比较它们的不同之处
escape(), encodeURI()和encodeURIComponent()是在Javascript中用于编码字符串的三个常用的方法,而他们之间的异同却困扰了很多的Javascript初学者,今天我就在这里对这三个方法详细地分析与比较一下。
escape()、encodeURI()、encodeURIComponent()区别详解
NULL 博文链接:https://liuzidong.iteye.com/blog/829204
serialize , encodeURIComponent encodeURI 中文转成GBK编码 encodeURIComponent encodeURI 默认转 utf-8 ;重写方法 转成GBK
基于网址URL中特殊字符...Javascript中的escape,encodeURI和encodeURIComponent的区别 安全字符不同 兼容性不同 对Unicode字符的编码方式不同 适用场合不同 表单提交文档字符集会影响encodeURI吗?其他和Url编码相关
escape(), encodeURI()和encodeURIComponent()是在Javascript中用于编码字符串的三个常用的方法,而他们之间的异同却困扰了很多的Javascript初学者,这篇文章详细的给大家介绍了js中编码函数:escape,encodeURI与...
JavaScript中有三个可以对字符串编码的函数,分别是: escape,encodeURI,encodeURIComponent,相应3个解码函数:unescape,decodeURI,decodeURIComponent 。接下来通过本文给大家介绍三者之家的区别,感兴趣的朋友...