@Hfnas

Почему Post возвращает null при ajax?

у меня свяхка nginx +apache

сначла была ошибка "as been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource." в консоли,
пошла править nginx
location / {
#site.ru -откуда вызывается ajax
add_header 'Access-Control-Allow-Origin' 'https://site.ru' always; 
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS' always;
add_header 'Access-Control-Allow-Headers' 'Content-Type' always;
}

ошибка в консоли пропала, до урла доходит (но, к сожалению не возвращает ни гет, ни пост- все массивы нулевые)- dзаписывается в файл на сервере "null"
/**
     * @Route("/send2", name="amo_order_send_to_ms")
 */
 public function send(Request $request):Response{
$lead=$request->get("leads"); 
file_put_contents('/var/log-amo3.txt',  json_encode($lead));  
return new JsonResponse([
            'success' => true])}


а теперь , мой ajax код.
let dataforMS = { };
            dataforMS["leads"] = 1234;

            $.ajax({
              url: 'https://site2.ru/send2',
              method: 'POST',
              xhr: function() {  // custom xhr
                myXhr = $.ajaxSettings.xhr();
                return myXhr;
              },
              //Ajax events
              beforeSend: function (response) {
                  console.log("beforeSend"+response);
              },
              success: function (response) {
                  console.log("success"+response);
              },
              error: function (response) {
                  console.log("error"+response);
              },
              // Form data
              data: dataforMS,
              cache: false,
              contentType: false,
              processData: false
            });


debugger in chrome возвращает success.
  • Вопрос задан
  • 87 просмотров
Пригласить эксперта
Ответы на вопрос 1
@AUser0
Чем больше знаю, тем лучше понимаю, как мало знаю.
Если на сервере в файл /var/log-amo3.txt записывается "null" - значит в переменной $lead хранится значение NULL, значит $lead=$request->get("leads"); присваивает NULL, значит $request->get("leads") возвращает NULL, значит нуууужно что...?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы