Então, eu criei uma API no Laravel e pelo que eu vejo ela tá ok, porém por qual movito eu não estou conseguindo fazer requisições Restfull pelo Postman, ele indica que a conexão não foi feita.
Então, eu criei uma API no Laravel e pelo que eu vejo ela tá ok, porém por qual movito eu não estou conseguindo fazer requisições Restfull pelo Postman, ele indica que a conexão não foi feita.
Olá Bruno,
Olhando o seu código eu vi que você colocou suas rotas como: /api/students
no arquivo routes\api.php
É importante lembrar que o laravel já adiciona por padrão um /api
em qualquer rota desse arquivo, então para acessar a sua rota students
seria assim (com dois api
):
http://127.0.0.1:8000/api/api/students
Seria esse o problema? Caso não, diz qual o link que você está acesssando pelo postman e qual a mensagem ou erro retornado.
ok!! eu vou tentar isto. É que no meu Laravel ele não colocou '\api'. E desculpa a pergunta básica é que nunca fiz uma API no Laravel.
Fala, Bruno. Temos um curso de desenvolvimento de API aqui com Lumen. Sugiro que você faça este treinamento. ;-)
Então, fiz exatamente o que você me sugeriu, porém ele dá mensagem erro??
No seu arquivo routes/api.php
do novo link que você mandou eu vi que você removeu o /api
de todas as rotas, isso é bom, é o recomendado a se fazer já que o laravel faz isso por você.
Então como você fez essa alteração você vai acessar sem o /api/api
, só precisa de um /api
. Exemplo:
http://127.0.0.1:8000/api/students
Mas tem outro problema nesse seu teste, não existe a rota students/create
e nem mesmo uma rota tipo post
, confere novamente o seu arquivo de rotas.
Tem sim!! no meu arquivo api.php está assim!
Route::get('students', 'ApiController@getAllStudent'); Route::get('students/{id}','ApiController@getStudent'); Route::get('students','ApiController@createStudent'); Route::get('students/{id}','ApiController@updateStudent'); Route::get('students/{id}','ApiController@deleteStudent');
Outra coisa eu estou tentando fazer um CRUD e nele adicionei um funcionalidade para fazer upload de uma foto, ele está acusando um erro de extensão do arquivo? como conserto isto?
Mesmo com utilizando a URL que você me aconselhado ele retorna mensagem de erro!
Como eu disse antes, não existe essa rota que está sendo testada, a rota post para students/create
No arquivo api.php
existem 5 rotas get, mas nenhuma rota post:
Route::get('students', 'ApiController@getAllStudent');
Route::get('students/{id}','ApiController@getStudent');
Route::get('students','ApiController@createStudent');
Route::get('students/{id}','ApiController@updateStudent');
Route::get('students/{id}','ApiController@deleteStudent');
Além disso nehuma das rotas acima é students/create
, são todas students
ou students/{id}
repetindo, isso vai gerar vários conflitos.
Para o create que você está testando vai precisar de uma rota assim:
Route::post('students/create','ApiController@createStudent');
Sobre essa outra dúvida do upload, abre um novo tópico por favor pra não misturar com esse.