2016-12-15 2 views
2

AngularJs $ http.post() запрос не работает должным образом

Я хочу, чтобы сохранить одну задачу моей дб. Если количество данных в назначенном члене более 175, оно не отправит полученную ошибку 404, но если количество данных в назначенном члене меньше 175, оно отправит успех и сохранит мой db. Есть идея об этом. Я не ошибаюсь со мной. Пожалуйста, помогите мне спасибо

Это мои данные JSON

$scope.task= 

{ 
    "title": "My Title", 
    "description": "My Description", 
    "assignedMember": [ 
     { 
     "userId": "51b701dae4b0dd92df2c32d1", 
     "status": "ASSIGNED" 
     }, 
     { 
     "userId": "52de0811e4b04615ce7ed6bd", 
     "status": "ASSIGNED" 
     }, 
     { 
     "userId": "559f8e97e4b0a5cdcd66bb76", 
     "status": "ASSIGNED" 
     }, 
    . 
    . 
    . 
    . 
    . 
    .etc upto 500 data 
    ] 
} 

Это мой пост запрос апи

var responsePromise = $http.post("api/tasks",$scope.task); 
responsePromise.success(function(data, status, headers, config) { 
    alert("Data created successfully"); 
}); 
responsePromise.error(function(data, status, headers, config) { 
alert("Error") 
}); 

Если назначенный размер члена больше чем 175 или Content Length в браузере больше 24580, когда я отправляю этот json, я получил ошибку 404

Если назначенный размер элемента меньше 175 или длина контента в браузере меньше 10080, когда я отправляю этот json, он будет Успех

Если я получаю сообщение об ошибке 404 мой браузер консоли как этот

Request header 
------------- 

Host: localhost 

User-Agent: Mozilla/5.0 (X11; Linux i686; rv:45.0) Gecko/20100101 Firefox/45.0 

Accept: application/json, text/plain,/

Accept-Language: en-US,en;q=0.5 

Accept-Encoding: gzip, deflate 

Content-Type: application/json;charset=utf-8 

Referer: http://localhost/login.do 

Content-Length: 24580 

Response header 
-------------- 


Connection: close 

Content-Encoding: gzip 

Content-Type: text/html 

Date: Thu, 15 Dec 2016 14:21:56 GMT 

Server: nginx/1.10.1 

Transfer-Encoding: chunked 

ли какие-либо ограничения на мой Nginx сервер? Пожалуйста, помогите мне

Почтовый запрос не имеет ограничений. и получить запрос ограничено до 2048 КБ

На самом деле я отправляю через сообщение, с какой проблемой сталкиваюсь я?

ответ

0

Connection: close, думаю, ваш сервер не принимает большое количество данных.

Nginx «не удается быстро», когда клиент сообщает ему, что он собирается отправить тело больше, чем client_max_body_size, посылая 413 ответа и закрытия соединения.

Большинство клиентов не читают ответы до тех пор, пока не будет отправлен весь запрос. Поскольку nginx закрывает соединение, клиент отправляет данные в закрытый сокет, вызывая TCP RST.

Если ваш HTTP-клиент поддерживает его, лучший способ справиться с этим - отправить заголовок Expect: 100-Continue. Nginx поддерживает это правильно с 1.2.7 и отвечает с ответом 413 Request Entity Too Large, а не 100 Continue, если Content-Length превышает максимальный размер корпуса.

Referred from

+0

я не смог понять нт Ji, .Что будет мне делать? Пожалуйста, помогите мне? –

+0

Я добавил ~ client_body_in_file_only clean; client_body_buffer_size 32K; client_max_body_size 300M; sendfile on; send_timeout 300s; ~ –

+0

, но его не работает –

Смежные вопросы