diff options
| author | 2022-09-21 09:31:05 +0200 | |
|---|---|---|
| committer | 2022-09-21 09:31:05 +0200 | |
| commit | d2bdaf378fa050b98432993ec378bbfd54d4d964 (patch) | |
| tree | 3b192c98b96a06469f089173f9e73f7c7d0f1038 | |
| parent | New function xs_sha256_base64(). (diff) | |
| download | snac2-d2bdaf378fa050b98432993ec378bbfd54d4d964.tar.gz snac2-d2bdaf378fa050b98432993ec378bbfd54d4d964.tar.xz snac2-d2bdaf378fa050b98432993ec378bbfd54d4d964.zip | |
More work in http signed request.
| -rw-r--r-- | http.c | 6 | ||||
| -rw-r--r-- | main.c | 12 | ||||
| -rw-r--r-- | xs_curl.h | 5 |
3 files changed, 15 insertions, 8 deletions
| @@ -75,12 +75,12 @@ d_char *http_signed_request(snac *snac, char *method, char *url, | |||
| 75 | 75 | ||
| 76 | /* add the new headers */ | 76 | /* add the new headers */ |
| 77 | hdrs = xs_dict_append(hdrs, "content-type", "application/activity+json"); | 77 | hdrs = xs_dict_append(hdrs, "content-type", "application/activity+json"); |
| 78 | hdrs = xs_dict_append(hdrs, "accept", "application/activity+json"); | ||
| 78 | hdrs = xs_dict_append(hdrs, "date", date); | 79 | hdrs = xs_dict_append(hdrs, "date", date); |
| 79 | hdrs = xs_dict_append(hdrs, "signature", signature); | 80 | hdrs = xs_dict_append(hdrs, "signature", signature); |
| 80 | hdrs = xs_dict_append(hdrs, "digest", digest); | 81 | hdrs = xs_dict_append(hdrs, "digest", digest); |
| 81 | hdrs = xs_dict_append(hdrs, "user-agent", "snac/2.x"); | 82 | hdrs = xs_dict_append(hdrs, "user-agent", "snac/2.x"); |
| 82 | 83 | ||
| 83 | // return xs_http_request(method, url, hdrs, | 84 | return xs_http_request(method, url, hdrs, |
| 84 | // body, b_size, status, payload, p_size); | 85 | body, b_size, status, payload, p_size); |
| 85 | return NULL; | ||
| 86 | } | 86 | } |
| @@ -2,6 +2,8 @@ | |||
| 2 | /* copyright (c) 2022 grunfink - MIT license */ | 2 | /* copyright (c) 2022 grunfink - MIT license */ |
| 3 | 3 | ||
| 4 | #include "xs.h" | 4 | #include "xs.h" |
| 5 | #include "xs_encdec.h" | ||
| 6 | #include "xs_json.h" | ||
| 5 | 7 | ||
| 6 | #include "snac.h" | 8 | #include "snac.h" |
| 7 | 9 | ||
| @@ -19,10 +21,18 @@ int main(int argc, char *argv[]) | |||
| 19 | int status; | 21 | int status; |
| 20 | d_char *payload; | 22 | d_char *payload; |
| 21 | int p_size; | 23 | int p_size; |
| 22 | http_signed_request(&snac, "GET", "https://comam.es/snac/jessie", | 24 | xs *response; |
| 25 | |||
| 26 | response = http_signed_request(&snac, "GET", "https://mastodon.social/users/VictorMoral", | ||
| 23 | headers, NULL, 0, &status, &payload, &p_size); | 27 | headers, NULL, 0, &status, &payload, &p_size); |
| 24 | 28 | ||
| 25 | { | 29 | { |
| 30 | xs *j1 = xs_json_dumps_pp(response, 4); | ||
| 31 | printf("response:\n%s\n", j1); | ||
| 32 | printf("payload:\n%s\n", payload); | ||
| 33 | } | ||
| 34 | |||
| 35 | { | ||
| 26 | xs *list = queue(&snac); | 36 | xs *list = queue(&snac); |
| 27 | char *p, *fn; | 37 | char *p, *fn; |
| 28 | 38 | ||
| @@ -138,10 +138,7 @@ d_char *xs_http_request(char *method, char *url, d_char *headers, | |||
| 138 | /* fill the request headers */ | 138 | /* fill the request headers */ |
| 139 | p = headers; | 139 | p = headers; |
| 140 | while (xs_dict_iter(&p, &k, &v)) { | 140 | while (xs_dict_iter(&p, &k, &v)) { |
| 141 | xs *h; | 141 | xs *h = xs_fmt("%s: %s", k, v); |
| 142 | |||
| 143 | const char *args[] = { k, v, NULL }; | ||
| 144 | h = xs_fmt("%s: %s", args); | ||
| 145 | 142 | ||
| 146 | list = curl_slist_append(list, h); | 143 | list = curl_slist_append(list, h); |
| 147 | } | 144 | } |