2017-02-02 36 views
5

POST isteğinin gövdesine sorgu dizesi parametresi olarak göndermek yerine cursorMark değerini eklemek mümkün mü?POST json isteği ile birlikte cursorMark istek üzerine

aşağıdaki sorgu: :

{"query":"val:abc","limit":10,"cursorMark":"*","sort":"id asc"} 

mesajla hata verir "JSON isteğinde Bilinmeyen üst düzey tuşu: cursorMark"

+0

Bu isteği nasıl gönderirsiniz? –

cevap

3

göre Solr Json Request API documentation kadar her sorgu dizesi parametresi olan bir JSON API'sinde karşılık gelen POST istek parametresi, örn. q -> sorgu, başlangıç ​​-> vb

Ancak cursorMark sorgu dizesi parametresi için eşdeğer parametre vardır, dengelenmiştir.

Ben uygulamadan/json gelen isteği türünü değişiyor farkındayım iyi çözüm uygulama için/x-www-form-urlencoded POST isteği gövdesinin sorgu dizesi parametreleri kullanarak sağlar. application/json'u kullanmamın nedeni json yanıtını almaktı, ancak wt = json parametresi tarafından denetleniyor. için

  1. Değiştirilen sorgu uri: Lütfen http://localhost:8983/solr/myCore/select?wt=json
  2. Değiştirilen POST istek parametreleri vb, sıralar, dizge meslektaşları, yani q sorgu başlatmak için
  3. sorgu dizesi urlkodlamasi.
  4. Kodlanmış sorgu dizesini POST gövdesine yerleştirin.
  5. Değiştirilmiş içerik türü, uygulama/x-www-form-urlencoded olarak değiştirilmiştir.