public List<Afood> getFoodFromCat(String cat) {
String resultado = "";
List<Afood> list = new ArrayList<Afood>();
try {
URL xpto = new URL("http://10.0.2.2/webservice/nutrituga/get_food_by_cat.php");
HttpURLConnection conn;
conn = (HttpURLConnection) xpto.openConnection();
conn.setDoInput(true);
conn.connect();
InputStream is = conn.getInputStream();
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
try {
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc = db.parse(is);
NodeList nl = doc.getElementsByTagName("item");
// resultado = String.valueOf(nl.getLength());
for (int i = 0; i < nl.getLength(); i++) {
Node n = nl.item(i);
Node childNode = n.getFirstChild();
while (childNode != null) {
if (childNode.getNodeType() == Node.ELEMENT_NODE) {
if (childNode.getNodeName().equalsIgnoreCase(
"NAME_FOOD")) {
Node valor = childNode.getFirstChild();
// resultado = resultado + valor.getNodeValue();
list.add(new Afood(valor.getNodeValue(), "",
(int) Math.round(Math.random()), 1, 1,
1, 1, 1, 1));
}
}
childNode = childNode.getNextSibling();
}
}
return list;
} catch (ParserConfigurationException e1) {
e1.printStackTrace();
} catch (SAXException e1) {
e1.printStackTrace();
} catch (IOException e1) {
e1.printStackTrace();
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return list;
}
我有这个函数接收xml并将其复制到列表中。这很好实施。 我想要知道的是发送一个类别(我收到的类似函数的参数)并仅接收该类别的食物。
服务器已准备好接收类别并从该类别发送食物 我该怎么做才能发送类别并收到正确的xml?
答案 0 :(得分:0)
我想我已经明白了。
仍然没有经过测试,但我认为我唯一需要做的就是将猫放入网址。
例如:URL xpto =新网址(“http://10.0.2.2/webservice/nutrituga/get_food_by_cat.php?cat=”+ cat);
这是对的吗?