我有一个奇怪的问题,我无法弄清楚。我在Google App Engine上设置了Web服务。我可以从Google API Explorer中测试它并获取数据。但是,当我复制并粘贴与以下API链接相关联的网址(为了安全目的而删除了应用信息)时,我得到了一个" NOT FOUND"页面上的错误。它应该返回一些JSON数据。
有没有人知道为什么会这样?
这是我的Servlet代码
@ApiMethod(name="updateHighFive")
public Event addHighFive(@Named("eventid") int eventid, @Named("userid") int userid) throws NotFoundException{
//parameters needed
//eventid
//title
//description
//categoryid
Event event = new Event();
event = MyDB.AddHighFive(eventid, userid);
return event;
}
这是我的数据库连接的代码。
public static Event AddHighFive(int eventid, int userid) {
Event event = null;
Connection connection;
CallableStatement statement=null;
int rs = 0;
String callStatement = "{call AddHighFive(?,?)}";
try{
connection=getConnection();
statement = connection.prepareCall(callStatement);
statement.setInt(1, eventid);
statement.setInt(2, userid);
rs = statement.executeUpdate();
if(rs != 0){
event = new Event();
event.setId(eventid);
}
statement.close();
connection.close();
}catch (SQLException ex){
System.out.println("Error: " + ex.toString());
System.out.println("Query: " + statement.toString());
}
return event;
}
请求
POST https://myapi-webservice-01.appspot.com/_ah/api/api/v1/addHighFive/4/1
X-JavaScript-User-Agent:Google API Explorer
响应
200 OK
{
" id":4,
" highFives":0,
"去":0,
" currentHere":0,
" categoryid":0,
" userId":0,
" kind":" myapi#resourcesItem",
" etag":" \" 4nNuVpsUM8obBGiS0qN7CVracwc / L7tNRSrZhr-ryKSf0HchvG1lWC4 \""
}
答案 0 :(得分:0)
将网址复制粘贴到浏览器时,您正在执行GET方法。请尝试使用curl -XPOST {url}。