ThinkPHP使用post方式写注册接口注意的问题

1.注册接口完成,头像上传的注意事项

namespace app\api\controller;

class Register extends Controller

{

    public function doReg()

{

        $request = Request::instance();

        $post = $this->request->post();

        $uname = $post['uname'];

        $password = $post['password'];

        $mail = $post['mail'];

        $birthdate = $post['birthdate'];

        $gender = $post['gender'];

        $tele = $post['tele'];

        $file = $request->file('file');

      // echo json_encode($post);

        if ($file) {

            //将传入的图片移动到框架应用根目录/public/uploads/ 目录下,ROOT_PATH是根目录下,DS是代表斜杠/

            $info = $file->move(ROOT_PATH . 'public' . DS . 'static' . DS . 'uploads');

            if ($info) {

                $pic = $info->getSaveName();

                $data = [

                    'uname' => $uname,

                    'password' => md5($password),

                    'mail' => $mail,

                    'pic' => $pic,

                    'tele' => $tele,

                    'birthdate' => $birthdate,

                    'gender' => $gender

                ];

                if (Db::table('users')->insert($data)) {

                    $success['success'] = '1';

                    echo json_encode($success);

                } else {

                    $error['error'] = '1';

                    echo json_encode($error);

                }

            } else {

                // 上传失败获取错误信息

                echo $file->getError();

                die;

            }

}

}

}

2.postman


(1)post方式传文件,需要设置postman工作文件夹路径,在postman设置Settings里调整Working Directory路径

(2)接口文件接收post传参,文件格式

$request = Request::instance();

 $file = $request->file('file');  //变量名是postman填写的key.

(3)post方式获取不到file文件.

你可能感兴趣的:(ThinkPHP使用post方式写注册接口注意的问题)