【问题标题】:Request parameters from FullCalendar not received in RouteRoute 中未收到来自 FullCalendar 的请求参数
【发布时间】:2020-06-12 22:40:15
【问题描述】:

日历和事件正常工作,除了来自 fullcalendar 的请求参数 startend 没有被路由接收到。 $request 完全是空的。

我的日历:

<script>
    document.addEventListener('DOMContentLoaded', function() {
        var FEED_URL = "{{url('/')}}" + "/event-feed";
        var calendarEl = document.getElementById('calendar');
        var calendar = new FullCalendar.Calendar(calendarEl, {
            plugins: [ 'dayGrid' ],
            events: {
                url: FEED_URL
            }
        });
        calendar.render();
    });
</script>

我的路线:

use Carbon\Carbon;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Route;

Route::get('/event-feed', function (Request $request) {
    $eventOutput = [
        [
            'id' => 1,
            'resourceId' => 'a',
            'title' => 'Test',
            'start' => '2020-06-11T00:00:00.000000Z',
            'end' => '2020-06-11T02:00:00.000000Z',
            'left' => $request->input('start'), //null
            'right' => $request->input('end'), //null
            'uri' => $request->path()
        ]
     ];
    return json_encode($eventOutput);
});

生成的提要是:

[{"id":1,"resourceId":"a","title":"Test","start":"2020-06-11T00:00:00.000000Z","end":"2020-06-11T02:00:00.000000Z","left":null,"right":null,"uri":"event-feed"}]

我也试过php artisan serve 看看它是否是我的 Wamp 服务器,但问题是一样的。我还设置了一个香草 Laravel 7 安装,问题是一样的。有人知道在哪里看吗?

【问题讨论】:

  • 控制台有错误吗?我使用 fullcalendar 将您的代码粘贴到我的测试中,它工作正常......
  • 控制台没有错误,但我刚刚在 firefox/devtools/networkanalysis 中看到获取请求是http://localhost/vanilli/public/event-feed?start=2020-05-31T00:00:00+02:00&amp;end=2020-07-12T00:00:00+02:00,但它似乎没有到达路由。
  • 请求状态码是否:200 OK ?
  • 是的,200 OK。什么可以删减参数?
  • 那么我真的不知道,因为你的代码对我来说没有任何问题......在我的回复中:left:2020-05-31T00:00:00+02:00right:2020-07-12T00:00:00+02:00,所以它根本不为空。

标签: laravel http request fullcalendar fullcalendar-4


【解决方案1】:

我从不使用 FullCalendar,但我注意到在 Doc 上参数通过 GET 方法传递。

我不知道你是否在你的 routes.php 文件中添加了

use Illuminate\Http\Request;

因为您在同一个web.php 文件上使用Request $request,所以如果您添加use Illuminate\Http\Request;,您可以获得我在Laravel 7 上测试的所有数据并正常工作

希望对你有帮助!

【讨论】:

  • 谢谢,但我已经在我的 web.php 中使用了Illuminate\Http\Request;,我猜不是这样。 use Carbon\Carbon; use Illuminate\Http\Request; use Illuminate\Support\Facades\Route;
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-09-15
  • 1970-01-01
  • 2016-10-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多