0
我尝试使用许多有关该答案的答案,但它们无效。AngularJS查询适用于http,但不适用于资源
我正在使用api来获取json数据与AngularJS。
我可以用$ http获取数据并将其绑定到前端。但我无法获得与$资源相同的数据。
当我试着使用ngResource($资源)得到的数据,它给出的错误这样的:
错误:[$资源:badcfg]错误的资源配置。预计响应包含一个数组,但有一个对象
例如,我用这个项目,你可以从这里检查项目:https://github.com/okproject/AngularGetPost
你能帮助我吗?
结果数据,如:
{
geonames: [
{
continent: "EU",
capital: "Andorra la Vella",
languages: "ca",
geonameId: 3041565,
south: 42.42849259876837,
isoAlpha3: "AND",
north: 42.65604389629997,
fipsCode: "AN",
population: "84000",
east: 1.7865427778319827,
isoNumeric: "020",
areaInSqKm: "468.0",
countryCode: "AD",
west: 1.4071867141112762,
countryName: "Andorra",
continentName: "Europe",
currencyCode: "EUR"
},
{
continent: "AS",
capital: "Abu Dhabi",
languages: "ar-AE,fa,en,hi,ur",
geonameId: 290557,
south: 22.633329391479492,
isoAlpha3: "ARE",
north: 26.08415985107422,
fipsCode: "AE",
population: "4975593",
east: 56.38166046142578,
isoNumeric: "784",
areaInSqKm: "82880.0",
countryCode: "AE",
west: 51.58332824707031,
countryName: "United Arab Emirates",
continentName: "Asia",
currencyCode: "AED"
}
]
}
它是有趣。问题是,当我使用这个资源用GET并一起发布行动,它不起作用。但是,当我定义资源只是为了得到你的例子,它的工作原理。你知道吗,当我们使用post和get方法时,发生了什么问题? – Ras
刚试过var resource = $ resource('http://api.geonames.org/countryInfoJSON?username=okproject',{'post':{method:'POST'}},{'query':{method:' GET',isArray:false}});它仍然有效,也许我错过了一些东西。 – Braulio
Ouw我找到了它。总结一下,我必须在URL之后移除花括号。如果我使用它,它不起作用。检查URL后的花括号。 var resource = $ resource('http://api.geonames.org/countryInfoJSON?username=okproject',{},{'post':{method:'POST'}},{'query':{method:' GET',isArray:false}}); – Ras