Wie werden Daten im Anfragetext gesendet, wenn Typeahead & Bloodhound verwendet wird?

Ich versuche, einen Typeahead zu implementieren, dessen Quelle eine API ist, die eine GET-Anforderung mit einer Datenmenge erwartet, nicht mit url-codierten Daten. Ich habe ein paar verschiedene Dinge im 'prepare'-Objekt ausprobiert, kann es aber nicht dazu bringen, Parameter für die URL-Codierung zu verwenden. Ist es mit typeahead oder jquery im Allgemeinen möglich, dies nicht zu tun? Ich habe das Gefühl, dass Sie das vielleicht nicht zulassen, da dies als "schlechte Praxis" angesehen wird, aber das Ändern der API ist nicht wirklich eine Option! Hier ist mein Code:

$(document).ready(function(){
  var people = new Bloodhound({
  datumTokenizer: Bloodhound.tokenizers.obj.whitespace('value'),
  queryTokenizer: Bloodhound.tokenizers.whitespace,
  remote: {
    url: 'apiUrl',
    prepare: function (query, settings) {
                      settings.type = "GET";
                      settings.contentType = "application/json";
                      settings.DataType = "json";
                      settings.processData = false;
                      settings.data = JSON.stringify({"search":"people","query":query});
                      return settings;
                   }
    }
  });
  $('.typeahead').typeahead(null, {
    source: people
  });
})

Ich verwende jquery 1.11.3 & typeahead.js 0.11.1.

Vielen Dank

Antworten auf die Frage(2)

Ihre Antwort auf die Frage