Everywhere: Update JSON API
This commit is contained in:
parent
6a0ecc2bd2
commit
d5a09373e4
15 changed files with 230 additions and 243 deletions
|
@ -36,14 +36,14 @@ U0 @slon_api_v2_media_post(SlonHttpSession* session)
|
|||
FileWrite(scratch_buffer, file->buffer, file->size);
|
||||
|
||||
// Create media object
|
||||
JsonObject* media_object = Json.CreateObject();
|
||||
JsonObject* media_object = Json.CreateObject(slon_mem_task);
|
||||
media_object->set("id", media_id, JSON_STRING);
|
||||
media_object->set("type", "image", JSON_STRING);
|
||||
media_object->set("url", NULL, JSON_NULL);
|
||||
media_object->set("preview_url", NULL, JSON_NULL);
|
||||
media_object->set("remote_url", NULL, JSON_NULL);
|
||||
media_object->set("meta", Json.CreateObject(), JSON_OBJECT);
|
||||
media_object->o("meta")->set("original", Json.CreateObject(), JSON_OBJECT);
|
||||
media_object->set("meta", Json.CreateObject(slon_mem_task), JSON_OBJECT);
|
||||
media_object->o("meta")->set("original", Json.CreateObject(slon_mem_task), JSON_OBJECT);
|
||||
media_object->o("meta")->o("original")->set("width", width, JSON_NUMBER);
|
||||
media_object->o("meta")->o("original")->set("height", height, JSON_NUMBER);
|
||||
media_object->set("description", NULL, JSON_NULL);
|
||||
|
|
|
@ -28,7 +28,7 @@ JsonObject* @slon_api_v2_search_remote_account_from_webfinger(SlonHttpSession* s
|
|||
}
|
||||
|
||||
U8* fetch_buffer = CAlloc(HTTP_FETCH_BUFFER_SIZE, slon_mem_task);
|
||||
JsonObject* http_headers = Json.CreateObject();
|
||||
JsonObject* http_headers = Json.CreateObject(slon_mem_task);
|
||||
http_headers->set("accept", "application/json", JSON_STRING);
|
||||
@http_response* resp = Http.Get(url, fetch_buffer, NULL, http_headers);
|
||||
|
||||
|
@ -50,7 +50,7 @@ JsonObject* @slon_api_v2_search_remote_account_from_webfinger(SlonHttpSession* s
|
|||
|
||||
Free(fetch_buffer);
|
||||
|
||||
JsonObject* webfinger_object = Json.Parse(resp->body.data);
|
||||
JsonObject* webfinger_object = Json.Parse(resp->body.data, slon_mem_task);
|
||||
if (!webfinger_object) {
|
||||
@slon_log(LOG_HTTPD, "Error querying webfinger, object not present in response from remote server");
|
||||
return NULL;
|
||||
|
@ -94,7 +94,7 @@ JsonObject* @slon_api_v2_search_remote_account_from_webfinger(SlonHttpSession* s
|
|||
return NULL;
|
||||
}
|
||||
|
||||
JsonObject* actor_object = Json.Parse(resp->body.data);
|
||||
JsonObject* actor_object = Json.Parse(resp->body.data, slon_mem_task);
|
||||
JsonObject* account = @slon_accounts_create_local_for_remote_actor(session, actor_object, remote_actor, url);
|
||||
Free(fetch_buffer);
|
||||
|
||||
|
@ -107,10 +107,10 @@ U0 @slon_api_v2_search_get(SlonHttpSession* session)
|
|||
|
||||
if (@slon_api_authorized(session)) {
|
||||
// SLON_AUTH_ACCOUNT_ID
|
||||
JsonObject* results = Json.CreateObject();
|
||||
results->set("accounts", Json.CreateArray(), JSON_ARRAY);
|
||||
results->set("statuses", Json.CreateArray(), JSON_ARRAY);
|
||||
results->set("hashtags", Json.CreateArray(), JSON_ARRAY);
|
||||
JsonObject* results = Json.CreateObject(slon_mem_task);
|
||||
results->set("accounts", Json.CreateArray(slon_mem_task), JSON_ARRAY);
|
||||
results->set("statuses", Json.CreateArray(slon_mem_task), JSON_ARRAY);
|
||||
results->set("hashtags", Json.CreateArray(slon_mem_task), JSON_ARRAY);
|
||||
|
||||
U8* q = request_json->@("q");
|
||||
if (!q) {
|
||||
|
@ -138,7 +138,7 @@ U0 @slon_api_v2_search_get(SlonHttpSession* session)
|
|||
remote_account = @slon_api_v2_search_remote_account_from_webfinger(session, at_fragments[0], at_fragments[1]);
|
||||
}
|
||||
if (remote_account) {
|
||||
results->a("accounts")->append(Json.CreateItem(remote_account, JSON_OBJECT));
|
||||
results->a("accounts")->append(remote_account);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
|
@ -151,7 +151,6 @@ U0 @slon_api_v2_search_get(SlonHttpSession* session)
|
|||
|
||||
slon_api_v2_search_get_return:
|
||||
session->send(results);
|
||||
Json.Delete(results);
|
||||
} else {
|
||||
session->status(401);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue