Próbuję uzyskać dostęp do witryny za pośrednictwem ich eksportu JSON.JSON w Groovy/Grails
URL jest: http://neotest.dabbledb.com/publish/neotest/f820728c-4451-41f6-b346-8cba54e52c6f/projects.jsonp
Używam HTTPBuilder spróbować tego dokonać w Groovy, ale mam problemy. Kiedyś przykładowy kod z http://groovy.codehaus.org/HTTP+Builder wymyślić to:
// perform a GET request, expecting JSON response data
http.request(GET, JSON) {
url.path = 'publish/neotest/f820728c-4451-41f6-b346-8cba54e52c6f/projects.jsonp'
// response handler for a success response code:
response.success = { resp, json ->
println resp.statusLine
// parse the JSON response object:
json.responseData.results.each {
println " ${it.titleNoFormatting} : ${it.visibleUrl}"
}
}
}
Jednak, kiedy uruchomić test jednostki dla metody po prostu dostać No such property: GET for class: ProjectController groovy.lang.MissingPropertyException: No such property: GET for class: ProjectController
które mam problemy zrozumienie.
Nie mam przywiązane do HTTPBuilder żadnym odcinku, to właśnie to, co niektóre z najlepszych wpisów Google zaproponował dla JSON połączenia z Grails. Jeśli istnieje inne rozwiązanie, które poleciłbyś, jestem za tym wszystkim, ponieważ nie robię tu dużego postępu. – Kivus
Wiele osób zaleca HttpClient Apache'a, na którym oparty jest program budujący HTTP, więc jest to prawdopodobnie najlepsza opcja. Próbowałem tylko pomóc rozwiązać problem, który wydawał się być błędem kompilacji w twoim skrypcie Groovy. Jeśli program HTTP Builder nie działa, możesz napisać prostą Javę w swoim Groovy, która używa HttpClient, a nawet java.net. *, Chociaż byłaby to nieco więcej kodu. –