首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何通过URL传递撇号?

如何通过URL传递撇号?
EN

Stack Overflow用户
提问于 2011-09-04 19:10:19
回答 1查看 105.6K关注 0票数 30

我正在使用Node.js

var s = 'Who\'s that girl?';
var url = 'http://graph.facebook.com/?text=' + encodeURIComponent(s);

request(url, POST, ...)

这不起作用!脸书把我的短信切掉了..。

完整代码:

function postToFacebook(fbid, access_token, data, next){
    var uri = 'https://graph.facebook.com/'+String(fbid)+'/feed?access_token='+access_token;
    var uri += '&' + querystring.stringify(data);
    request({
        'method':'POST',
        'uri': uri,
    },function(err,response,body){
        next();
    });
};


app.get('/test',function(req,res){
    var d = {
        'name':'Who\'s that girl?',
        'link': 'http://example.com',
        'caption': 'some caption...',
        'description': 'some description...',
        'picture': 'http://i.imgur.com/CmlrM.png',
    };
    postToFacebook(req.user.fb.id, req.user.fb.accessToken, d);
    res.send('done');
});

Facebook在墙上收到了一条空白帖子。无文字显示。没什么。

当我记录我的URI时,是这样的:

https://graph.facebook.com/1290502368/feed?access_token=2067022539347370|d7ae6f314515c918732eab36.1-1230602668|GtOJ-pi3ZBatd41tPvrHb0OIYyk&name=Who's%20that%20girl%3F&link=http%3A%2F%2Fexample.com&caption=some%20caption...&description=some%20description...&picture=http%3A%2F%2Fi.imgur.com%2FCmlrM.png

显然,如果您查看该URL,您会发现撇号没有正确编码。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-10-28 00:27:28

我也在做类似的事情(也是使用Node.js),我首先尝试使用JavaScript的内置escape()函数,但它并没有真正起作用。

这就是我是如何让搜索工作的。这可能只是一个偶然的机会:

 function doMySearch(showTitle) {
     showTitle = escapeShowTitle(showTitle)
     var url = "http://graph.facebook.com/search?q=" + showTitle + "&type=page"
     doSomethingWith(url)
}

function escapeShowTitle(title) {
    title = title.replace(/'/g, "")
    title = escape(title)
    return title
}

doMySearch("America's Funniest home Videos")
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7298770

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档