API를 호출하려고하는데 "처리되지 않은 약속 거부 : 오류 : 요청이 상태 코드 500으로 실패했습니다."오류가 발생합니다. 어떻게 오류가 발생했는지 몰라. API 호출을 componentDidMount에 넣었습니다. 오류가 redux 구현에서 왔는지 또는 내가 API를 어떻게 호출했는지 확신 할 수 없습니다.처리되지 않은 약속 거부 : 오류 : 상태 코드 500으로 요청이 실패했습니다.
이것은 내가 api를 호출 한 방법입니다. 로그인에 성공하면 사용자 이름을 토큰으로 사용하고 다른 API를 호출하는 데 사용합니다. 내 감속기를 작성하는 방법이있다
export const getSemcode = (username) => async dispatch => {
let param = {
nomatrik: username,
}
console.log(`${helper.ROOT_URL}/result/GetListOfKodSesiSem`)
let code_res = await
axios.post(`${helper.ROOT_URL}/result/GetListOfKodSesiSem`, param)
console.log(code_res.data);
if (code_res.data.length > 0) {
const { code } = code_res.data;
dispatch({ type: SEMCODE_FETCH_SUCCESS, payload: { semCode: code }});
}
}
:
state={
username: '',
semcode: [
{}
]
}
componentWillMount() {
AsyncStorage.getItem('Login_token').then((token) => {
console.log('this is coursescreen',token);
let Login_token = token;
this.setState({ username: Login_token });
});
}
componentDidMount(){
this.props.getSemcode(this.state.username);
}
componentWillReceiveProps(nextProps) {
console.log('xx',nextProps);
if (nextProps.semCode != undefined) {
this.setState({ semcode: nextProps.semCode });
}
}
이
내가 내 활동 파일을 작성하는 방법이다import { SEMCODE_FETCH_SUCCESS} from '../actions/types';
const INITIAL_STATE={
semCode:[],
}
export default function (state=INITIAL_STATE, action){
switch(action.type){
case SEMCODE_FETCH_SUCCESS:
return action.payload
default:
return state;
}
}
사람이 pleaseeeeee
오류 메시지를 도와 줄 수
Error received from axios.post: {"config":{"transformRequest": {},"transformResponse":{},"timeout":0,"xsrfCookieName":"XSRF- TOKEN","xsrfHeaderName":"X-XSRF-TOKEN","maxContentLength":-1,"headers": {"Accept":"application/json, text/plain, /","Content- Type":"application/json;charset=utf-8"}, "method":"post","nomatrik":"BB16160907", "url":" https://smp.ums.edu.my/api/result/GetListOfKodSesiSem ","data":" {\"Accept\":\"application/json\",\"Content- Type\":\"application/json\"}"},"request": {"UNSENT":0,"OPENED":1,"HEADERS_RECEIVED":2,"LOADING":3,"DONE":4, "readyState":4,"status":500,"timeout":0,"withCredentials":true,"upload": {},"_aborted":false,"_hasError":false,"_method":"POST","_response":" {\"Message\":\"An error has occurred.\"}", "_url":" https://smp.ums.edu.my/api/result/GetListOfKodSesiSem ", "_timedOut":false,"_trackingName":"unknown", "_incrementalEvents":false,"responseHeaders":{"Date":"Sat, 30 Dec 2017 03:58:25 GMT","Content-Length":"36","X-Powered-By":"ARR/3.0","X-AspNet- Version":"4.0.30319","Expires":"-1","Content-Type":"application/json; charset=utf-8","Server":"Microsoft-IIS/10.0","Pragma":"no-cache","Cache- Control":"no-cache"},"_requestId":null,"_headers": {"accept":"application/json, text/plain, /","content- type":"application/json;charset=utf- 8"},"_responseType":"","_sent":true,"_lowerCaseResponseHeaders":{"date":"Sat, 30 Dec 2017 03:58:25 GMT","content-length":"36","x-powered-by":"ARR/3.0","x- aspnet-version":"4.0.30319","expires":"-1","content-type":"application/json; charset=utf-8","server":"Microsoft-IIS/10.0","pragma":"no-cache","cache- control":"no-cache"},"_subscriptions":[],"responseURL": " https://smp.ums.edu.my/api/result/GetListOfKodSesiSem "},"response":{"data": {"Message":"An error has occurred."},"status":500,"headers":{"date":"Sat, 30 Dec 2017 03:58:25 GMT","content-length":"36","x-powered-by":"ARR/3.0","x- aspnet-version":"4.0.30319","expires":"-1","content-type":"application/json; charset=utf-8","server":"Microsoft-IIS/10.0","pragma":"no-cache","cache- control":"no-cache"},"config":{"transformRequest":{},"transformResponse": {},"timeout":0,"xsrfCookieName":"XSRF-TOKEN","xsrfHeaderName":"X-XSRF- TOKEN","maxContentLength":-1,"headers":{"Accept":"application/json, text/plain, /","Content-Type":"application/json;charset=utf-8"},"method": "post","nomatrik":"BB16160907", "url":" https://smp.ums.edu.my/api/result/GetListOfKodSesiSem ","data":" {\"Accept\":\"application/json\",\"Content- Type\":\"application/json\"}"},"request": {"UNSENT":0,"OPENED":1,"HEADERS_RECEIVED":2,"LOADING":3,"DONE":4, "readyState":4,"status":500,"timeout":0,"withCredentials":true,"upload": {},"_aborted":false,"_hasError":false,"_method":"POST","_response":" {\"Message\":\"An error has occurred.\"}", "_url":" https://smp.ums.edu.my/api/result/GetListOfKodSesiSem ", "_timedOut":false,"_trackingName":"unknown","_incrementalEvents":false, "responseHeaders":{"Date":"Sat, 30 Dec 2017 03:58:25 GMT","Content- Length":"36","X-Powered-By":"ARR/3.0","X-AspNet- Version":"4.0.30319","Expires":"-1","Content-Type":"application/json; charset=utf-8","Server":"Microsoft-IIS/10.0","Pragma":"no-cache","Cache- Control":"no-cache"},"_requestId":null,"_headers": {"accept":"application/json, text/plain, /","content- type":"application/json;charset=utf- 8"},"_responseType":"","_sent":true,"_lowerCaseResponseHeaders":{"date":"Sat, 30 Dec 2017 03:58:25 GMT","content-length":"36","x-powered-by":"ARR/3.0","x- aspnet-version":"4.0.30319","expires":"-1","content-type":"application/json; charset=utf-8","server":"Microsoft-IIS/10.0","pragma":"no-cache","cache- control":"no-cache"},"_subscriptions": [],"responseURL":" https://smp.ums.edu.my/api/result/GetListOfKodSesiSem "}}}
로그인 조치 :
export const attemptLogin = (username, password) => async dispatch => {
let param = {
txtNomatrik: username,
txtPwd: password,
public_key: helper.PUBLIC_KEY,
secret_key: helper.SECRET_KEY
}
console.log(`${helper.ROOT_API_URL}/v1/basic/ad/std/login`)
let login_res = await
axios.post(`${helper.ROOT_API_URL}/v1/basic/ad/std/login`, param)
console.log(login_res.data);
await AsyncStorage.setItem('jwtToken',login_res.data.token);
if (login_res.data.status == 'Successful login') {
const { login } = login_res.data;
dispatch({ type: LOGIN_SUCCESS});
}
}
안녕하세요 gdphy 님이 우편 배달부를 다운로드 하시겠습니까? 좋은 GUI에서 API 호출을 테스트 할 수있는 정말 멋진 앱입니다. 응답을 표시하고 응용 프로그램을 디버그하는 데 도움을줍니다. https://www.getpostman.com/ 행운을 빌어 요! – wuno
api는 우체부에서 잘 작동합니다. 오류 디버깅을 시도했는데 아래의 오류가 발생하여이를 해결하는 방법을 모릅니다. – gdphy
멋진 데 도움을 드리겠습니다. 몇 가지 말해줘. 1. 어떤 API를 사용하고 있습니까? 2. api 끝점에 필요한 토큰을 전달 했습니까? 3. API를 보여줄 수있는 문서가 있습니까? 사용자 이름 변수에 토큰을 전달하고이를 매개 변수로 설정하는 것처럼 보입니다.그런 다음 axios POST 요청을합니다. 나는 전에 이와 같은 문제가 있었는데, API의 100 %는 쿼리를 특정 방식으로 형식화 할 것을 기대하고 있으며, 약간의 실수를 저지르고있었습니다. Content-Type : application/json 헤더를 설정하는 것만 큼 간단 할 수 있습니다. 시도하고 정보를 보내주십시오. – wuno