Установка для свойства processData значения false в jQuery нарушает мой AJAX-запрос

make внутри и сам по себе обрабатывает цели каталога так же, как и целевые файлы. Таким образом, легко написать такие правила:

outDir/someTarget: Makefile outDir
    touch outDir/someTarget

outDir:
    mkdir -p outDir

Единственная проблема заключается в том, что временная метка каталогов зависит от того, что делается с файлами внутри. Для приведенных выше правил это приводит к следующему результату:

$ make
mkdir -p outDir
touch outDir/someTarget
$ make
touch outDir/someTarget
$ make
touch outDir/someTarget
$ make
touch outDir/someTarget

Это определенно не то, что вы хотите. Всякий раз, когда вы касаетесь файла, вы также прикасаетесь к каталогу. И поскольку файл зависит от каталога, файл, следовательно, выглядит устаревшим, заставляя его перестраивать.

Однако вы можете легко разбить этот цикл, указав make, чтобы игнорировать временную метку каталога , Это делается путем объявления каталога как только prerqusite для заказа:

# The pipe symbol tells make that the following prerequisites are order-only
#                           |
#                           v
outDir/someTarget: Makefile | outDir
    touch outDir/someTarget

outDir:
    mkdir -p outDir

Это правильно дает:

$ make
mkdir -p outDir
touch outDir/someTarget
$ make
make: 'outDir/someTarget' is up to date.

TL; DR:

Напишите правило для создания каталога:

$(OUT_DIR):
    mkdir -p $(OUT_DIR)

И цели для содержимого внутри зависят от каталога только для заказа:

$(OUT_DIR)/someTarget: ... | $(OUT_DIR)
16
задан halfer 13 March 2018 в 18:11
поделиться

1 ответ

Вы хотите передать данные в формате JSON. Вы передаете объект Javascript. JSON - это способ сериализации объектов Javascript в строки, чтобы их можно было передавать без проблем совместимости.

Вы действительно хотите передать JSON в строку:

$.ajax({
    url: myUrl,
    type: "POST",
    data: '{"foo": "bar"}',
    processData: false,
    contentType: 'application/json'
});
17
ответ дан lonesomeday 13 March 2018 в 18:11
поделиться
Другие вопросы по тегам:

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