如何在apache Laragon - laravel 10中允许方法调用?

3zwjbxry  于 2023-10-23  发布在  Apache
关注(0)|答案(2)|浏览(162)

我有一个Laragon的香草安装和Laravelv10的香草安装与Jetstream,我用它作为一个API我有一个单独的项目在Vue消耗说API,所有的登录工程。
我正在使用axios,它在我保存时工作,我创建了一个model和一个controller,所以我有一个NoteController与销毁功能:

public function destroy(Note $note)
    {
        
        $note->delete();

        return response()->noContent();
    }

当我执行php artisan route:list --name=note时,我可以看到删除路由:

DELETE   api/note/{note}................. note.destroy › Api\NoteController@destroy

我在api.php中使用:

Route::apiResource('/note', NoteController::Class);

在vue中,我正在做(其中item是一个note对象):

api.delete<Note>('/api/note', { data: item })

我得到一个405 Method Not Allowed

message
: 
"The DELETE method is not supported for route api/note. Supported methods: GET, HEAD, POST."

我可以在响应头中看到:

我尝试在<Directory "F:/laragon/www">标签中添加以下内容:

<Limit GET POST PUT DELETE>
    Allow from all
</Limit>

重新启动Laragon,我仍然得到405
我尝试了其他关于Laravel配置的问题的解决方案,但我仍然有错误,我在route:list中看到了路由

bfnvny8b

bfnvny8b1#

尝试像这样调用API:

api.delete<Note>(`/api/note/${item.id}`)

(Edit:删除了API调用的第二个参数:{_method: 'delete'}

qpgpyjmq

qpgpyjmq2#

我建议你在JSON格式的请求参数中传递_method= null。

相关问题