Эта ошибка возникает при переполнении циклов цикла. Давайте рассмотрим простой пример:
class demo{
public static void main(String a[]){
int[] numberArray={4,8,2,3,89,5};
int i;
for(i=0;i<numberArray.length;i++){
System.out.print(numberArray[i+1]+" ");
}
}
Сначала я инициализировал массив как «numberArray». то некоторые элементы массива печатаются с использованием цикла. Когда цикл запускает время «i», напечатайте элемент (numberArray [i + 1] .. (когда значение i равно 1, будет напечатан элемент numberArray [i + 1].) Предположим, что, когда i = (numberArray. length-2), последний элемент массива печатается. Когда значение «i» переходит к (numberArray.length-1), нет значения для печати. В этот момент происходит «ArrayIndexOutOfBoundsException». Я надеюсь, что вы можете получить idea.thank you!
Проблема, с которой вы сталкиваетесь, связана с той же политикой происхождения. Вы можете прочитать об этом на сайте Mozilla ( https://developer.mozilla.org/en-US/docs/Web/HTTP/Server-Side_Access_Control ). это в основном доказанный несанкционированный доступ к веб-серверам. Вы можете изменить реакцию своего веб-сервера, и я также включил эту ссылку.
Если сюда придут новые люди, чтобы помочь мне, я приведу более подробную информацию.
Я использую Laragon в качестве локального сервера, который использует Apache. Я пытался изменить httpd.conf, и это ничего не меняет.
Когда я помещаю URI в мой навигатор, он работает, например:
http: //api.test/api/events/ возвращает хороший json.
И моя ошибка изменилась:
Доступ к XMLHttpRequest по адресу [ http: //api.test/api/events/0 «из источника» http: // localhost: 8080 'заблокирован политикой CORS: заголовок' Access-Control-Allow-Origin 'содержит несколько значений' *, http: // localhost: 8080 ', но только один разрешен.
blockquote>Повторно отредактируйте, это работает. Я удалил промежуточное ПО cors и поместил набор Access-Control-Allow-Origin в httpd.conf
Серверы используются для размещения веб-страниц, приложений, изображений, шрифтов и многого другого. Когда вы используете веб-браузер, вы, вероятно, пытаетесь получить доступ к отдельному веб-сайту (расположенному на сервере). Веб-сайты часто запрашивают эти размещенные ресурсы из разных мест (серверов) в Интернете. Политики безопасности на серверах снижают риски, связанные с запросом ресурсов, размещенных на другом сервере. Давайте рассмотрим пример политики безопасности: same-origin.
1113 Политика одного и того же происхождения очень ограничительна. В соответствии с этой политикой документ (например, веб-страница), размещенный на сервере A, может взаимодействовать только с другими документами, которые также находятся на сервере A. Короче говоря, политика одного и того же происхождения обеспечивает одинаковость документов, взаимодействующих друг с другом. происхождение.blockquote>
Проверьте эту библиотеку CORS , созданную для использования Laravel. Установка проста:
$ composer require barryvdh/laravel-cors $ php artisan vendor:publish --provider="Barryvdh\Cors\ServiceProvider"
Значения по умолчанию установлены в
config/cors.php
return [ /* |-------------------------------------------------------------------------- | Laravel CORS |-------------------------------------------------------------------------- | | allowedOrigins, allowedHeaders and allowedMethods can be set to array('*') | to accept any value. | */ 'supportsCredentials' => false, 'allowedOrigins' => ['*'], 'allowedHeaders' => ['Content-Type', 'X-Requested-With'], 'allowedMethods' => ['*'], // ex: ['GET', 'POST', 'PUT', 'DELETE'] 'exposedHeaders' => [], 'maxAge' => 0, ];
allowedOrigins, allowedHeaders
иallowedMethods
можно установить наarray('*')
для принятия любого значения. [ 1116]Чтобы разрешить CORS для всех ваших маршрутов, добавьте промежуточное программное обеспечение HandleCors в свойстве
$middleware
классаapp/Http/Kernel.php
:protected $middleware = [ // ... \Barryvdh\Cors\HandleCors::class, ];
Если вы хотите разрешить CORS для определенной группы промежуточного программного обеспечения или маршрута, добавьте промежуточное программное обеспечение HandleCors в свою группу:
protected $middlewareGroups = [ 'web' => [ // ... ], 'api' => [ // ... \Barryvdh\Cors\HandleCors::class, ], ];