在Facebook Messenger聊天中,我们可以通过按" SHIFT + ENTER"来打破一条线
那么如何通过Facebook Graph API(Messenger API)打破界线
我在一些答案中看到,图谱API接受<center></center>
而不是<br>
,其API的其他部分似乎接受\r\n
。
目前是否有任何方式发送换行符以及是否有文件记录?
答案 0 :(得分:15)
结果Line break in Facebook status update via Graph API可能会给你你想要的东西:
使用\ u000A
对我而言,它解决了我与Facebook SendApi的Facebook Messenger Bot类似的问题。
答案 1 :(得分:10)
如果您使用的是php,则应使用chr(10)
。其工作方式与'\n'
或'<br>'
类似。您也可以使用<center></center>
。它为我工作。
答案 2 :(得分:3)
我不是100%确定你用什么语言来构建你的机器人,但是如果你使用PHP那么\ n需要用双引号字符串包装,例如
$message = "Message \n with a line break";
使用单引号(')将无效。
如果使用PHP,更好的解决方案是使用PHP_EOL常量
您用于构建机器人的任何语言都可能有类似的怪癖
答案 3 :(得分:3)
我试图在用户触摸我的Messenger机器人中的Get Started之前显示欢迎文本中的换行符。我发现&#34; \ n&#34;只在移动版的Messenger中工作过。目前它还没有在网上工作。假设在某个时候会得到修复,因为Facebook在本周的博客文章中显示了换行符(2016年12月9日)https://messengerblog.com/bots/messenger-platform-1-2-link-ads-to-messenger-enhanced-mobile-websites-payments-and-more
答案 4 :(得分:2)
虽然没有记录,但我认为&#34; \ r \ n&#34;会工作。 图形api将json响应返回为&#34; \ r \ n&#34;对于有换行符的消息或帖子。
答案 5 :(得分:1)
使用特定语言的行分隔符。
Java System.lineseprator
php PHP_EOL
Python os.linesep
Nodejs os.EOL
当我们在字符串中使用特殊字符时,JSON转换将其理解为字符串的一部分。
答案 6 :(得分:1)
在Python \\n
中,该行按预期中断。
答案 7 :(得分:1)
我必须使用\ n \ n才能使换行起作用。
例如
"Sorry, We don't have any information ragarding this.\n\nSay 'Hi' to startover"
在Facebook Messenger中显示以下内容
Sorry, We don't have any information ragarding this.
Say 'Hi' to startover
答案 8 :(得分:0)
转换&#34; \ n&#34;在你的文字中&#34; \ n&#34; =&GT;它工作...... 使用Php这是我的代码:(已测试)
$_text = str_replace(array("\r\n", "\r", "\n"), "\\n", $_text);