我试图调用一个api,但出现错误“未处理的承诺被拒绝:错误:请求失败,状态码为500”。 我不知道如何得到错误。我将api调用放在componentDidMount中。 我不确定错误是来自redux实现还是来自我的api。

这就是我所谓的api。 成功登录后,我将用户名作为令牌,并使用它来调用另一个api。

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 });

}

}

这是我编写动作文件的方式:

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 }});

}

}

这是我编写减速器的方式:

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;

}

}

谁能帮助我

错误信息

从axios.post接收到错误:{“ config”:{“ transformRequest”:{},“ transformResponse”:{},“超时”:0,“ xsrfCookieName”:“ XSRF-令牌”,“ 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”:“ {\\”接受\\“:\\”应用程序/ json \\“,\\”内容类型\\“:\\”应用程序/ json \\“}”},“请求”:{“ UNSENT”:0,“ OPENED”:1,“ HEADERS_RECEIVED “:2,” LOADING“:3,” DONE“:4,” readyState“:4,”状态“:500,”超时“:0:” withCredentials“:true,”上传“:{},” _ aborted“ :false,“ _ hasError”:false,“ _ method”:“ POST”,“ _ response”:“ {\\” Message \\“:\\”发生错误。\\“}”,“ _url”:“ https:// smp.ums.edu.my/api/result/GetListOfKodSesiSem “,” _timedOut“:false,” _ trackingName“:”未知“,” _incrementalEvents“:false,” responseHeaders“:{” Date“:” 2017年12月30日,星期六03:58:25 GMT“,”内容长度“:” 36“,” X-Powered-By“:” ARR / 3.0“,” X-AspNet-Ve rsion“:” 4.0.30319“,” Expires“:”-1“,” Content-Type“:” application / json; charset = utf-8”,“服务器”:“ Microsoft-IIS / 10.0”,“编译指示”:“ no-cache”,“ Cache-Control”:“ no-cache”},“ _ requestId”:null,“ _ headers” “:{” accept“:”应用程序/ json,文本/纯文本, / “,”内容类型“:”应用程序/ json; charset = utf-8“},” _ responseType“:”“,” _ sent“:true ,“ _ lowerCaseResponseHeaders”:{“ date”:“星期六,2017年12月30日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“,”服务器“:” Microsoft-IIS / 10.0“,” pragma“:”无缓存“,”缓存控制“:”无缓存“},” _ subscriptions“:[],” responseURL“:” https://smp.ums.edu.my/api/result/GetListOfKodSesiSem “},” response“:{” data“:{” Message“:”发生错误。“},”状态“ :500,“ headers”:{“ date”:“ Sat,30 Dec 2017 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“,”服务器“:” Microsoft-IIS / 10.0“,” pragma“:” no-cache“,” cache-control“:” no-cache“},” config“:{” transformRequest“ :{},“ transformResponse”:{},“超时”:0,“ xsrfCookieName”:“ XSRF-TOKEN”,“ xsrfHeaderName”:“ X-XSRF-TOKEN”,“ maxContentLength”:-1,“标题”: {“ Accept”:“应用程序/ json,文本/纯文本, / ”,“ 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”:“ {\\”消息\\“:\\”发生错误。\\“}”,“ _url”:“ https://smp.ums.edu.my/api/result/GetListOfKodSesiSem ”,“ _timedOut“:false,” _ trackingName“:”未知“,” _ 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”,“服务器”:“ Microsoft-IIS / 10.0”,“编译指示”:“ no-cache”,“ Cache-Control”:“ no-cache”},“ _ requestId”:null,“ _ headers” “:{” accept“:”应用程序/ json,文本/纯文本, / “,”内容类型“:”应用程序/ json; charset = utf-8“},” _ responseType“:”“,” _ sent“:true ,“ _ lowerCaseResponseHeaders”:{“ date”:“星期六,2017年12月30日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“,”服务器“:” Microsoft-IIS / 10.0“,” pragma“:”无缓存“,”缓存控制“:”无缓存“},” _ 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});

}

}

理请求时出现未知错误.服务器返回的状态码为: 500,react-native相关推荐

  1. 服务器返回的状态码为500,当服务端返回500的时候axois如何获取状态码和响应信息...

    不用catch接收: image.png 用catch接收,并打印出err: image.png 但是就是拿不到返回的错误信息 image.png 解决办法: .catch(function (err ...

  2. 安卓判断服务器返回的状态码,关于服务器返回的十四种常见HTTP状态码详解

    原标题:关于服务器返回的十四种常见HTTP状态码详解 HTTP状态码 状态码是由3位数字和原因短语组成的(比如最常见的:200 OK),其中第一位数字表示响应类别,响应类别从1到5分为五种 add:其 ...

  3. 服务器返回常见状态码及意义

    状态代码由三位数字组成,第一个数字定义了响应的类别,且有5种可能取值: 1XX:指示信息–表示请求已接收,继续处理 2XX:成功–表示请求已被成功接收.理解.接受 3XX:重定向–要完成请求必须进行更 ...

  4. 请求头有问题导致Nginx返回400状态码

    背景 上个星期有人找我看了Nginx的问题,场景是这样的,用户访问一个网址,这个网址有一个按钮,点击这个按钮后会跳转到新的页面,但这个跳转,有时候可以,有时候不可以--不可以的时候页面显示400状态码 ...

  5. 服务器返回401状态码

    401状态码表示未授权unauthorized,有两种情况 ①服务端要求传递token信息,而实际客户端没有传 ②传了token,但是在服务器端已经过期了(服务器端存储token的有效期为2个小时) ...

  6. request-promise 获取返回头信息_http返回的状态码 大全

    00 Continue 继续.客户端应继续其请求101 Switching Protocols 切换协议.服务器根据客户端的请求切换协议.只能切换到更高级的协议,例如,切换到HTTP的新版本协议200 ...

  7. http 返回的状态码大全

    100 Continue 继续.客户端应继续其请求 101 Switching Protocols 切换协议.服务器根据客户端的请求切换协议.只能切换到更高级的协议,例如,切换到 HTTP 的新版本协 ...

  8. 远程服务器返回urlto龙,,一个简单的Get请求 老是出现【远程服务器返回异常:501】错误...

    救命啊,一个简单的Get请求 老是出现[远程服务器返回错误:501]异常 就是Get签到这里出现了异常,其他的不会.网上说是将IIS的"Web服务扩展"中的"WebDAV ...

  9. axios请求失败,response.data返回的状态码及错误信息获取

    axios请求失败,后端接口返回的状态码及错误信息获取 使用封装的elementUI后台框架,后台框架自定义封装并返回的code码转态(全部的返回数据,如下所示): 浏览器查看:返回的 error 信 ...

最新文章

  1. D - Silver Cow Party POJ - 3268
  2. Java设计模式探讨之单例模式
  3. 使用高级视频质量工具 AVQT 评估视频 | WWDC 演讲实录
  4. [BZOJ 1076][SCOI2008]奖励关(期望+状压Dp)
  5. 和男朋友一块儿吃VS单独一人在家吃饭
  6. Azure手把手系列 4:深入了解Azure 一块钱当三块用
  7. 动态规划 NOIP经典问题 开心的金明(洛谷P1060题题解,Java语言描述)
  8. 我会铭记这一天:2016年10月25日
  9. ubuntu 下操作目录,出现Permission denied的解决办法
  10. python中size_x的意思,对pytorch中x = x.view(x.size(0), -1) 的理解说明
  11. 等高线地图_高中地理——每日讲1题(北美洲的气候、等高线的阅读)
  12. ADO.NET数据访问模板整理
  13. 远程查看服务器版本,远程管理控制服务器(服务器远程控制工具)V4.2.2019.5.27 官方版...
  14. Install-Package Ninject -Project SportsStore.WebUI
  15. 冒号在MATLAB里基本意思
  16. “Failed to load response data“ django@xframe_options_exempt 网站不许 Firefox 显示被嵌入的网页
  17. Mac的日常使用之免费NTFS for Mac (mounty)一款免费的NTFS 。畅快的使用移动硬盘
  18. 计算机网络网卡作用是什么,什么是网卡?它的作用是什么?
  19. perl调用其他的perl_Perl可能是老派,但它继续吸引新用户
  20. AD转换及单片机通信

热门文章

  1. 发布 Rafy .NET Standard 版本 Nuget 包
  2. 使用 mono 编译 .NET Standard 应用
  3. ASP.NET Core的配置(1):读取配置信息
  4. C语言试题十三之求出1到100之内能被7或者11整除,但不能同时被7和11整除的所有整书,并将他们放在a所指的数组中,通过n返回这些数的个数。
  5. TCP包头、UDP包头、IP包头、和MAC帧包头详细字段和包头大小
  6. C/C++之内存对齐
  7. linux之file命令总结
  8. Android之ViewPager使用(用美女做的背景,给你疲惫的眼睛视觉冲击)
  9. php中有两个美元符号$$的变量——可变变量
  10. echarty轴自定义显示不全_表格打印不全怎么办?这招超简单!