Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/358.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 张贴希伯来文+;facebook墙上的英文文本,单词混淆_Java_Facebook - Fatal编程技术网

Java 张贴希伯来文+;facebook墙上的英文文本,单词混淆

Java 张贴希伯来文+;facebook墙上的英文文本,单词混淆,java,facebook,Java,Facebook,我正在使用我的java代码在我的FB墙上发布: FacebookType publishMessageResponse = facebookClient.publish( connection, FacebookType.class, Parameter.with( "message", fbMessageData.getRecipeOwnerName() + " posted " + fbM

我正在使用我的java代码在我的FB墙上发布:

FacebookType publishMessageResponse = facebookClient.publish(
    connection,
    FacebookType.class,
    Parameter.with(
        "message",
        fbMessageData.getRecipeOwnerName() +
            " posted " +
            fbMessageData.getRecipeName()
    )
);
消息应该是:
Yoav postedמתון
,但是,它是这样发布的:
Yoav posted
<代码>מתכן是配方名称。配方名称可以是英语或希伯来语(UTF-8)


关于如何保持秩序有什么想法吗?

您是否尝试过使用Unicode BiDi\u控制字符之一?把它放在你的食谱名字前面或周围


在发送到fb之前,您应该先进行json_编码,然后再进行json_解码,这样做的技巧如下:

$album_details = array(
  'message'=> 'Live photos from our app',                      
  'name'=> $title, // This can be any non-english characters that can be in unicode
  'access_token'=>$pageAccessToken
);

$jsonStr = json_encode($album_details);
$decoded_album_settings = json_decode($jsonStr, true);

$create_album = $this->facebook->api('/'.$this->facebookPageId.'/albums', 'post', $decoded_album_settings);

这个想法是从这里开始的:

在名字前后加上\u200F?我试过在文章的开头加上\u200F或\u200E,但没有效果。我无法告诉你Facebook是否允许这些字符通过,或者可能会过滤掉它们。也许应该先检查一下实际的DOM。据我所知,这就是web浏览器通常显示LTR和RTL混合文本的方式。您是否已将Facebook的显示语言更改为希伯来语,以查看它是否以希伯来语正确显示?否,因为它需要从英语或希伯来语fb视图中以相同的方式显示