2011-10-20 3 views
0

API에 대해 AJAX/jQuery를 사용하여 로그인 양식을 설정하려고합니다. 내가 실행 터미널에서jQuery를 통한 API에 AJAX 로그인

: $ 컬 -d '[email protected] & 암호 = 123123 'https://api.xyzcompany.com/users/login.json

그것이 API 토큰과 인증 ID의 해시 반환 을 { " AUTH_TOKEN ":"23049asfd0990235 ","AUTH_ID ":"2304990 "} 여기

는 지금까지이 작업은 다음과 같습니다

<form id="loginForm" action="login_submit" method="get" accept-charset="utf-8"> 
     <fieldset> 
      <div data-role="fieldcontain"> 
       <label for="email">Email</label> 
       <input type="text" name="email" id="email" value="" /> 
      </div> 

      <div data-role="fieldcontain"> 
       <label for="password">Password</label> 
       <input type="password" name="password" id="password" value="" /> 
      </div> 

      <button type="submit" data-theme="g" name="submit" >Login</button> 

     </fieldset> 
    </form> 

</div><!-- /page --> 

$("#loginForm").submit(function(event) 
{ 
    event.preventDefault(); 
    $.ajax({ 
     type: "POST", 
     url: "https://api.xyzcompany.com/users/login.json", 
     data:({ 
      email : $('#email').val(), 
      password: $('#password').val() 
     }), 
     success: function(result) 
     { 
      if(result=='ok') 
      { 
       window.location = 'http://www.google.com/'; //just to show that it went through 
      } 
      else 
      { 
       $('#result').empty().addClass('error') 
        .append('Something is wrong.'); 
      } 
     } 
    }); 
    return false; 
} 

아마 추측했듯이 제출을 클릭해도 아무런 변화가 없습니다. "curl -d"명령을 AJAX 작동 호출로 바꾸는 데 도움을 주시면 감사하겠습니다. 고맙습니다!

+0

console.log (결과)를 수행하면; 성공의 첫 번째 기능으로 어떤 결과가 나타나거나 아무것도 얻지 못하고 있습니까? –

+0

실제로 사이트에없는 표준 오류로 전달됩니다. – Galen

+0

데이터 유형을 json으로 추가하십시오. 유형, URL, 데이터 또는 성공 중 'dataType :'json ' – Val

답변

0
$("#loginForm").submit(function(event) 
{ 
    event.preventDefault(); 
    $.ajax({ 
     type: "GET", 
     datatype:"json", 
     url: "https://api.xyzcompany.com/users/login.json", 
     data:({ 
      email : $('#email').val(), 
      password: $('#password').val() 
     }), 
     success: function(result) 
     { 
      if(result && result.auth_token.length>1) // you should do your checking here 
      { 
       window.location = 'http://www.google.com/'; //just to show that it went through 
      } 
      else 
      { 
       $('#result').empty().addClass('error') 
        .append('Something is wrong.'); 
      } 
     } 
    }); 
    return false; 
} 
+0

typo, dataType **** not datatype, – Val