2013-12-19 2 views
0

터미널에 컬을 사용하여 레일 어플리케이션의 여러 기능을 시뮬레이트하고 싶습니다. 지금 당면한 문제는 사용자 이름과 암호를 사용하여 응용 프로그램에 로그인하는 것입니다. 그러나 컨트롤러의 기능에 해당하는 URL을 누르는 동안 메시지 "sign_in 페이지로 리디렉션되었습니다"을 제공합니다.CURL을 사용하여 레일 컨트롤러를 시뮬레이션하십시오.

어쨌든 인증 토큰을 사용해야한다고 생각합니다. 그러나 나는 그것을 얻는 방법과 컨트롤러 함수를 호출 할 때 그것을 전달하는 방법을 모른다. 그래서 누군가가 나를 이해하는 데 도움이된다면, 나는 정말로 감사 할 것입니다.

+0

인증 쿠키를 인증 한 다음 캡처하여 요청과 함께 보내야합니다. 아마 cURL의'cookie-jar' 옵션이 도움이 될 수 있습니다 : http://curl.haxx.se/docs/http-cookies.html. – Nate

답변

0

요청의 형식을 확인하여 컨트롤러 코드를 수정하여 html과 json 요청을 별도로 처리 할 수 ​​있습니다.

첫 번째 요청에서 컨트롤러의 응답으로 액세스 토큰을 받으십시오. 추가 요청을 위해이 인증 토큰을 사용할 수 있습니다. 당신이 액세스 토큰을 생성 위해서는

  • 토큰 인증을위한 사용자 테이블에서 마이그레이션을 만들기
  • 사용자 로그인/가입은 해당 사용자에 대한 인증 토큰을 만들 때

이러한 채널을 만들면 사용자는 curl 요청을 사용하여 전달 된 사용자 정보를 갖고 사용자에 대한 응답으로 인증 토큰을 되돌릴 수 있습니다. 추가 요청을하려면이 인증 토큰을 사용하여 사용자를 확인하고 작업을 수행하십시오.

관련 문제