2014-12-16 4 views
1

사용자 이름과 암호 매개 변수가있는 로그인 양식이 있습니다. 브라우저를 새로 고치면서 개발하는 동안 몇 가지 경우에 양식 매개 변수가 URL에 삽입되는 것을 보았습니다. 이것은 사용자 이름과 암호이기 때문에 내주의를 끌고 있습니다.URL에 매개 변수를 추가 할 수 있습니까?

For example: http://localhost:8080/ui/?username=xxxxx&password=xxxxx#/login?redirectedFrom=%2Fsomewhere 

그러나 이전에 내가 한 일을 정확하게 기억하지 못하고 재현 할 수 없습니다. 몇 주 동안 3 번 봤어.

양식 매개 변수가 URL에 삽입되는 원인은 무엇입니까?

이 모든 것이 관련되어 있는지 확실하지 않지만 ui-router와 각도를 사용하고 있습니다. 매개 변수는 POST의 매개 변수이기도하지만 제출했는지 여부는 기억하지 않습니다. 내 생각 엔 (확실하지는 않지만)이 일이 일어날 때마다 내 로그인 시간이 끝난 직후 였고 로그인 페이지로 리다이렉션되었는데? redirectedFrom 매개 변수가 추가되었습니다. Chrome을 사용하고 있는데 사용자 이름/비밀번호 입력 내용을 기억하고 채 웁니다. Chrome 개발자 도구가 열려 있습니다. 서버를 다시 시작한 후 일 수 있습니다. 브라우저 새로 고침이 수행되었습니다.

답변

2

양식을 다시 제출했다고 생각됩니다. 로그인 폼에서

은 항상 다음과 같이 양식 태그에 POST 액션을 사용 :

<form action="POST"> 

당신이 양식을 제출 한 후 페이지를 새로 F5를 누르지 마십시오. URL을 클릭하고 양식 페이지에 다시 입력하십시오.

+1

동작을 지정하고 싶지 않습니다 (https://docs.angularjs.org/api/ng/directive/form#submitting-a-form-and-preventing-the-default-action). 그러나 https://docs.angularjs.org/api/ng/directive/ngSubmit에있는 정보를 기반으로 ng-click 대신 ng-submit을 사용해야한다고 생각하는 코드는 "기본 동작을 방지합니다" . 나는 왜 이것을 재현 할 수 없는지 잘 모르겠습니다. – user3141592

+1

답변에 따라 양식을 다시 제출하면 문제가 발생한다고 생각합니다. ng-click 대신 ng-submit을 사용하면 나중에 다시 제출하는 것을 막을 수 있습니다. 그러나 테스트하고 싶지만 재현 할 수는 없습니다. – user3141592

관련 문제