我一直在尝试解决一个只在生产中发生的错误。当我尝试create
一个新的数据库条目时,抛出了以下错误:
第一个
我使用的是resource controller
,create
方法使用inertia的form.post
,edit
方法使用它的form.put
(如果相关的话)。
我一直在尝试使用中提供的解决方案对此进行调试:
if (App::environment('production')) {
URL::forceScheme('https');
}
到您的AppServiceProvider.php
的boot()
方法。我已经这样做了,但仍然发生错误。我想知道这是否是惯性问题。
在服务器上,我尝试过:
APP_ENV=production
APP_URL=http://localhost
APP_URL=https://localhost
APP_URL=
APP_URL=http://strong-moebel.art
APP_URL=https://strong-moebel.art
但似乎没有什么能解决这个问题。我的网络主机是cloudways,我使用的是他们的Let's Encrypt SSL Certificate
。我也试着删除证书,看看会发生什么,但即使这样,还是发生了同样的错误。我对SSL
不是很了解,不知道是否有人能帮助我解决这个问题,或者指出一些我可以调查的东西。
我正在使用vite
构建生产构建。
更新:
通过form.post
发送请求的组件:
<template layout="backend/cms-layout">
<div id="cms-gallery-create" class="cms-gallery-create">
<form @submit.prevent="storeRecord" method="post" enctype="multipart/form-data">
<div class="title-btn-bar">
<h1>Erstelle eine Kreation:</h1>
<input type="submit" class="btn" value="Kreation speichern">
</div>
<p>Titel:</p>
<input class="textfield-closed title-field" v-model="form.title">
<p>Titelbild:</p>
<cms-img-upload v-model:image="form.image"/>
<p>Hauptteil:</p>
<cms-custom-editor v-model="form.body"/>
</form>
<div v-if="errors.target" class="error">{{ errors.target }}</div>
</div>
</template>
<script setup>
import CmsImgUpload from '../../components/backend/cms-img-upload.vue'
import CmsCustomEditor from '../../components/backend/cms-custom-editor.vue'
import {useForm} from "@inertiajs/inertia-vue3";
const props = defineProps({
errors: Object
})
const form = useForm({
title: '',
body: '',
image: '',
})
const storeRecord = () => {
form.post('/admin/gallerie/')
}
</script>
然后通过x1M13 N1 x将其路由到后端-〉x1M14 N1 x:
Route::middleware('auth')->group(function() {
Route::inertia('/admin/dashboard', 'backend/cms-dashboard');
Route::post('/admin/gallerie/move', [GalleryController::class, 'moveRow']);
Route::resource('/admin/gallerie', GalleryController::class);
Route::post('/admin/verkauf/move', [ShopController::class, 'moveRow']);
Route::resource('/admin/verkauf', ShopController::class);
Route::post('/admin/logout', [LoginController::class, 'destroy']);
});
并通过以下方式发送到X1 M15 N1 X:
Route::resource('/admin/gallerie', GalleryController::class);
在控制器内,调用此方法将请求数据存储在数据库内:
public function store(Request $request)
{
if ($request->image) {
$image_path = Custom::storeBase64Image($this->STORAGE_PATH, $request);
} else {
$image_path = null;
}
Gallery::create([
'title' => $request->title,
'body' => $request->body,
'image_path' => $image_path
]);
return redirect($this->BASE_URL);
}
问题似乎发生在前端,因为没有创建logs
。
1条答案
按热度按时间t9aqgxwy1#
多亏了@PaulTsai,它现在能用了。我不得不改变:
至:
Edit
:我刚刚遇到了完全相同的问题,但是使用
fetch
api,这次是使用paypal
。在生产中,我不得不进行更改:至:
也许这能帮到某人