Разделение записей в Rails для отображения в меню

Cross Origin Resource Sharing - это механизм, который использует дополнительные заголовки HTTP, чтобы сообщить браузеру, что веб-приложение, работающее на одном источнике (клиенте), имеет разрешение на доступ к выбранным ресурсам с сервера в другом источнике.

В основном, вашему Vue-приложению ( http: // localhost: 8080 ) должен быть разрешен доступ к вашей конечной точке Laravel ( http://127.0.0.1:8000/api/v1/ login ) Это должно помешать мне ударить конечную точку Laravel с моего вредоносного веб-сайта и действовать как аутентифицированный пользователь.

На основании docs вам нужно добавить 'allowedOrigins' => ['*'],, но это означает, что вы открываете свой сервер для всех запросов. Это нормально, если это общедоступный API, но в этом контексте это звучит не так, как вы этого хотите. Вместо этого в этом случае это будет 'allowedOrigins' => ['localhost:8080'],, чтобы ваше приложение Vue могло потреблять ваш сервер Laravel.

2
задан Tony S. 18 January 2019 в 20:18
поделиться

2 ответа

Вы можете использовать следующее:

list.first((list.length/2).ceil) # will convert 1.5 to 2

И

list.last((list.length/2).floor) # will convert 1.5 to 1
<час>

Проблема, с которой вы столкнулись, состоит в том, что [7,8,9][3/2] возвращает 8, и логика [114 ] (list.size / 2) использовался как в first_half, так и в last_half.

0
ответ дан MrYoshiji 18 January 2019 в 20:18
поделиться

Это то, что я в итоге сделал, чтобы заставить его работать. Мне пришлось изменить длину на число с плавающей точкой to_f, затем я смог заставить его правильно тестировать в консоли.

def first_half(list)
  list[0...(list.length.to_f / 2).ceil]
end

def last_half(list)
  list[(list.length.to_f / 2).ceil...list.length]
end

Использование .ceil в обоих методах позволило математике работать.

0
ответ дан Tony S. 18 January 2019 в 20:18
поделиться
Другие вопросы по тегам:

Похожие вопросы: