2

jQuery を使用して認証する Web アプリを作成しています。

$.ajax({
    url: "/session/create?format=json",
    type: "GET",
    dataType: "json",
    cache: false,
    username: $("#signin-email").val(),
    password: $("#signin-password").val(),
    success: function(data) {
      if(data.success) {
        success = true;
      }
    }
  });

問題は、私のアプリで必要な (@ が認証と URL のホストの区切り文字であるため) のようなものが含まれていない場合にのみ、コードが AJAX 要求を行うことです。これを行う方法を教えてくれる人はいますか? バックエンドを少し変更することは気にしませんが、ユーザーに-less メールを要求することは選択肢ではありません。username@@

ああ、私のバックエンドは Ruby-on-Rails アプリです。

4

2 に答える 2

1

すべての @ を %40 に置き換える必要があります。@ は、URL 内の認証とホストの間の区切り文字です (例: http://someone:password@example.com/

于 2010-04-17T22:27:31.550 に答える
0

説明されている動作を再現できませんでした: リクエストは @-logins に送信されています。これはサーバーの問題ではありませんか (たとえば、応答が json 形式ではないなど)? (ちなみに、私は標準のjqueryを使用しています.RoRに同梱されているものにはハックがないと仮定します)

于 2010-04-17T22:22:31.607 に答える