小编sze*_*ani的帖子

如何通过Graph Api按文件夹查询对话?

我的组织最近开始在他们的Facebook页面上使用文件夹.然后,会话可以分为收件箱,未读,跟进,完成和垃圾邮件.

我经常通过Graph API下载消息,当他们将所有会话保留在收件箱中时,一切正常.但是最近他们对会话进行了分类,因此收件箱目前只有7个元素,未读和跟进中有0个元素,Done和Spam文件夹中有无数个元素.

我之前使用过以下查询:

me/conversations?fields=updated_time,messages.limit(100){message,from,created_time}&limit=100
Run Code Online (Sandbox Code Playgroud)

现在它只返回收件箱中的元素.

图形API参考依稀描述像文件夹和标签的参数.我试着使用文件夹参数,如:

me/conversations?folder=done
me/conversations?folder=unread
me/conversations?folder=randomstring
Run Code Online (Sandbox Code Playgroud)

它一直从收件箱返回相同的7个元素.

但是,如果我查询me/conversations?folder=spam它会返回10个不同的元素,这些元素与实际的"垃圾邮件"文件夹不重叠,并包含标记为"完成"的元素.(它们是非常可疑的对话,所以它们可能被标记为垃圾邮件,并且可能存在两种不同的垃圾邮件定义,标记为垃圾邮件或在垃圾邮件文件夹中,我不知道.)

API参考没有指定如何实际使用文件夹和tags参数,也没有说明如何查询其他文件夹中的消息.

知道如何访问其他文件夹中的对话吗?我可以逐个查询文件夹或查询所有文件夹.

rest facebook facebook-graph-api

9
推荐指数
1
解决办法
968
查看次数

H2 SQL数据库 - 如果记录不存在则INSERT

我想初始化H2数据库,但我不确定是否存在记录.如果它们存在,我不想做任何事情,但如果它们不存在,我想写出默认值.

像这样的东西:

IF 'number of rows in ACCESSLEVELS' = 0
INSERT INTO ACCESSLEVELS VALUES
    (0, 'admin'),
    (1, 'SEO'),
    (2, 'sales director'),
    (3, 'manager'),
    (4, 'REP')
    ;
Run Code Online (Sandbox Code Playgroud)

sql h2

8
推荐指数
2
解决办法
8300
查看次数

POST请求变为GET

我正在用Java开发Android和服务器应用程序.服务器应用程序在Jetty上运行.Android应用程序在同一台计算机上模拟.

Android应用程序向服务器发送POST请求,但服务器的处理程序将其解释为GET.

当我使用发送HTTP工具模拟POST请求时,它完美地工作(我的意思是方法的类型是POST).

这是Android应用程序的代码片段:

HttpClient client = new DefaultHttpClient();
HttpConnectionParams.setConnectionTimeout(client.getParams(),
        10000); // Timeout Limit
HttpResponse response;

// Create message
JSONObject json = new JSONObject();
json.put("request_type", "info");
json.put("user_name", mEmail);

// Send message and get response
StringEntity se = new StringEntity(json.toString());
se.setContentType(new BasicHeader(HTTP.CONTENT_TYPE, "application/json"));
HttpPost post = new HttpPost("http://10.0.2.2:8080/app");
post.setEntity(se);
post.setHeader("Accept", "application/json");
post.setHeader("Content-Type", "application/json; charset=UTF-8");
response = client.execute(post);
Run Code Online (Sandbox Code Playgroud)

这是处理程序的代码:

public void handle(String target, Request baseRequest, 
    HttpServletRequest request, HttpServletResponse response) {
    System.out.println(request.getMethod());
}
Run Code Online (Sandbox Code Playgroud)

我不知道会出现什么问题,因为我认为如果我使用HttpPost,方法类型应该是POST.

java android http jetty

5
推荐指数
1
解决办法
6188
查看次数

标签 统计

android ×1

facebook ×1

facebook-graph-api ×1

h2 ×1

http ×1

java ×1

jetty ×1

rest ×1

sql ×1