0

我正在帮助的一个人正在使用电子商务 CMS (CSCart)。我认为出于安全原因,他们的代码是转义单引号(我对 js 不是很好)。

<script>
function share_click()
{

  RPXNOW.loadAndRun(['Social'], function () {  <--- This line gets escaped around social
    var activity = new RPXNOW.Social.Activity(
       "Share your comment",
       "commented on 'Like My New Perfume?' on cuteoverload.com",  <--- This line as well
       "http://cuteoverload.com/2009/10/26/like-my-new-perfume/");

    RPXNOW.Social.publishActivity(activity,
      {finishCallback:function(data){
        window.location = "http://google.com/"
      }
    });
  });

}
</script>

有什么想法可以解决这个问题吗?

4

3 回答 3

0

尝试使用:

 &apos;

代替 '

或者正如其他人所评论的那样,\' 通常可以防止撇号被破坏。

于 2012-04-09T16:29:51.530 回答
0

尝试

<script>
function share_click() {
  var arr = ["Social"];

  RPXNOW.loadAndRun(arr, function () {  
    var activity = new RPXNOW.Social.Activity(
       "Share your comment",
       "commented on `Like My New Perfume?` on cuteoverload.com",  
       "http://cuteoverload.com/2009/10/26/like-my-new-perfume/");

    RPXNOW.Social.publishActivity(activity,
      {finishCallback:function(data){
        window.location = "http://google.com/"
      }
    });
  });

}
</script>
于 2012-04-09T16:35:53.450 回答
0

只需使用双引号。如果您的示例准确,则“http://google.com/”周围的双引号不会被转义,对吗?所以,问题解决了。

至于双引号字符串中的单引号,如果它们被转义,它们会导致问题吗?我试过了,但我找不到那些内部引号是否被转义的行为差异。

于 2012-04-09T16:47:54.800 回答