javascript - ReactJS AXIOS 帖子不起作用

标签 javascript php reactjs yii2 axios

我正在尝试向 API 提交登录表单,但是该 API 未通过发布请求测试。

ReactJS Action :

/**
 * Sends login request to API
 */
export function login(email, password) {
    console.log('Credentials:', email, password)
    const request = axios.post(`${ROOT_URL}login/login`, 
        {
            email,
            password
        })
        .then((response) => console.log(response))
        .catch((error) => console.log(error));
}

api 的登录函数:

    public function actionLogin($credentials = [])
    {
        $request = Yii::$app->request;

        if ($request->post()) { 
            // handle the user login
        } else {
            return Json::encode(['status' => false, 'data' => 'error_no_request']);
        }
    }

Console logging the request 控制台记录响应 - 很明显它没有通过请求测试。

标题:

Response Headers
Access-Control-Allow-Origin:*
Connection:Keep-Alive
Content-Length:42
Content-Type:text/html; charset=UTF-8
Date:Wed, 20 Sep 2017 06:42:06 GMT
Keep-Alive:timeout=5, max=98
Server:Apache/2.4.18 (Win32) OpenSSL/1.0.2e PHP/7.0.8
X-Powered-By:PHP/7.0.8

Request Headers
Accept:application/json, text/plain, */*
Accept-Encoding:gzip, deflate, br
Accept-Language:en-US,en;q=0.8
Connection:keep-alive
Content-Length:56
Content-Type:application/json;charset=UTF-8
Host:127.0.0.1
Origin:http://localhost:8080
Referer:http://localhost:8080/login

enter image description here 控制台记录请求。

最佳答案

好的,既然POST方法不行,我就用GET方法试了一下。出于某种原因,它有效。 Action 现在看起来像:

export function login(email, password) {
    const request = axios({
        headers: { 
            'content-type': 'application/json'
        },
        method: 'post',
        url: `${ROOT_URL}login/login`,
        params: {
            email,
            password
        }
    })
    .then((response) => response.data)
    .catch((error) => error);
}

关于javascript - ReactJS AXIOS 帖子不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46314811/

相关文章:

javascript - Phonegap 应用因互联网连接不良而挂起

php - MySQL/PHP - 多层类别结构

javascript - handleClick 函数不适用于父组件?

php - 拉维尔 5 : how can I retrieve and display all posts that belong to certain category

php - Linkedin API - 按关键字搜索帖子

node.js - 在Docker中使用 "npm install"作为开发环境

javascript - 设置组件特定部分的授权

javascript - 自耕农生成器 : copy or template doesn't work from inside async callback

javascript - React-输入字段在onChange后变成字符串

javascript - 在异步等待中返回未决的 promise