为什么我的路由莫名其妙
我按照教程写了个路由routes\api.php
:
<?php
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Route;
Route::prefix('v1')->namespace('Api')->name('api.v1')->group(function() {
// 短信验证码
Route::post('verificationCodes', 'VerificationCodesController@store')
->name('verificationCodes.store');
});
用户访问http://xxxx.com/api/v1/verificationCodes
然后就开始执行下面的程序,没错吧
<?php
namespace App\Http\Controllers\Api;
use Illuminate\Support\Str;
use Illuminate\Http\Request;
use Overtrue\EasySms\EasySms;
use App\Http\Requests\Api\VerificationCodeRequest;
class VerificationCodesController extends Controller
{
public function store(VerificationCodeRequest $request, EasySms $easySms)
{
$phone = $request->phone;
.
.
.
}
}
但是,这个时候,用postman看,就给我返回了一堆html,然后在chrome里看这些html就是laravel的默认首页,我路由没有写这些东西啊,也不报错,就很奇怪。
然后我检查了app\Http\Request\Api\ VerificationCodeRequest
这个文件,里面也没写什么啊
<?php
namespace App\Http\Requests\Api;
class VerificationCodeRequest extends FormRequest
{
public function rules()
{
return [
'phone' => 'required|phone:CN,mobile|unique:users',
];
}
}
Nginx配置加这个 location 了吗:
另外,在你的 postman 的 Header 中加入
Accept : application/json
就会返回 json 格式的数据了