2016-12-13 2 views
0

Я начинаю заниматься cakephp и работаю над проектом среднего уровня, где у меня много веб-сервисов в MyController.ctp-файле. Теперь проблема до 4-5 дней внезапно перестала работать webservices. и приложение приостановлено в режиме реального времени.

После отладки я обнаружил, что мой типа POST API, перестал получать параметры с помощью $this->request->data[User][email], когда я тестировал, я обнаружил странную вещь, что API, возвращающиеся истинны на $this->request->is('get') и ложен на $this->request->is('post')

Я не знаю, что решение и причина этого. Пожалуйста помоги. Спасибо

+0

refferance: http://stackoverflow.com/questions/11832430/this-request-ispost-returns-false-on-form-submit –

+0

проверить свою форму, если метод отправки действительно 'post' – Beginner

+0

@NewbeeDev в webservice я устанавливаю сообщение типа во время вызова api. –

ответ

1

Вы также должны проверить на PUT.

if ($this->request->is('post') || $this->request->is('put')) 

PUT - это POST HTTP Request версия действия «изменить». Когда ваш запрос сделан для изменения данных, вместо добавления новых записей вы отправляете запрос PUT.

Ссылка: CakePHP Doc: Inspecting the request

+0

Да, вы правы, но проблема - когда я использую «$ this-> request-> data ['Model'] ['title']", это не выбор данных в методе, поэтому я не могу Идите дальше. –

+0

Решенный: я использовал «$ this-> data ['ModelName'] ['FieldName']", чтобы получить данные из запроса put. Теперь все работает нормально. Спасибо –

+0

Только один запрос, почему это произошло в запущенном коде, означает, что этот же код работает нормально с 1 года, и теперь внезапно это не удалось, можете ли вы описать причину этого. –