api_struct 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (40) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +14 -0
  3. data/.rspec +3 -0
  4. data/.rubocop.yml +14 -0
  5. data/.ruby-version +1 -0
  6. data/Gemfile +6 -0
  7. data/Gemfile.lock +105 -0
  8. data/LICENSE.txt +21 -0
  9. data/README.md +203 -0
  10. data/Rakefile +6 -0
  11. data/api_struct.gemspec +34 -0
  12. data/api_struct.svg +1 -0
  13. data/bin/console +14 -0
  14. data/bin/setup +8 -0
  15. data/circle.yml +3 -0
  16. data/lib/api_struct.rb +19 -0
  17. data/lib/api_struct/client.rb +86 -0
  18. data/lib/api_struct/collection.rb +19 -0
  19. data/lib/api_struct/concerns/underscore.rb +11 -0
  20. data/lib/api_struct/entity.rb +84 -0
  21. data/lib/api_struct/errors/client.rb +41 -0
  22. data/lib/api_struct/errors/entity.rb +7 -0
  23. data/lib/api_struct/extensions/api_client.rb +43 -0
  24. data/lib/api_struct/extensions/dry_monads.rb +18 -0
  25. data/lib/api_struct/settings.rb +7 -0
  26. data/lib/api_struct/version.rb +3 -0
  27. data/spec/api_struct/client_spec.rb +118 -0
  28. data/spec/api_struct/entity_spec.rb +185 -0
  29. data/spec/fixtures/cassettes/posts/1.yml +73 -0
  30. data/spec/fixtures/cassettes/posts/index_success.yml +1335 -0
  31. data/spec/fixtures/cassettes/posts/show_failure.yml +67 -0
  32. data/spec/fixtures/cassettes/posts/show_success.yml +73 -0
  33. data/spec/fixtures/cassettes/posts/suffix.yml +73 -0
  34. data/spec/fixtures/cassettes/posts/update_success.yml +71 -0
  35. data/spec/fixtures/cassettes/todos.yml +143 -0
  36. data/spec/fixtures/cassettes/users/1/posts.yml +1049 -0
  37. data/spec/fixtures/cassettes/users/1/posts/1.yml +797 -0
  38. data/spec/spec_helper.rb +25 -0
  39. data/spec/support/stub.rb +9 -0
  40. metadata +272 -0
@@ -0,0 +1,67 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://jsonplaceholder.typicode.com/posts/101
6
+ body:
7
+ encoding: UTF-8
8
+ string: ''
9
+ headers:
10
+ Accept:
11
+ - application/json
12
+ Content-Type:
13
+ - application/json
14
+ Connection:
15
+ - close
16
+ Host:
17
+ - jsonplaceholder.typicode.com
18
+ User-Agent:
19
+ - http.rb/3.0.0
20
+ response:
21
+ status:
22
+ code: 404
23
+ message: Not Found
24
+ headers:
25
+ Date:
26
+ - Thu, 18 Jan 2018 19:23:37 GMT
27
+ Content-Type:
28
+ - application/json; charset=utf-8
29
+ Content-Length:
30
+ - '2'
31
+ Connection:
32
+ - close
33
+ Set-Cookie:
34
+ - __cfduid=dea576b2c58beb4acebfa8cc1b8f3cd731516303417; expires=Fri, 18-Jan-19
35
+ 19:23:37 GMT; path=/; domain=.typicode.com; HttpOnly
36
+ X-Powered-By:
37
+ - Express
38
+ Vary:
39
+ - Origin, Accept-Encoding
40
+ Access-Control-Allow-Credentials:
41
+ - 'true'
42
+ Cache-Control:
43
+ - public, max-age=14400
44
+ Pragma:
45
+ - no-cache
46
+ Expires:
47
+ - Thu, 18 Jan 2018 23:23:37 GMT
48
+ X-Content-Type-Options:
49
+ - nosniff
50
+ Etag:
51
+ - W/"2-vyGp6PvFo4RvsFtPoIWeCReyIC8"
52
+ Via:
53
+ - 1.1 vegur
54
+ Cf-Cache-Status:
55
+ - EXPIRED
56
+ Expect-Ct:
57
+ - max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
58
+ Server:
59
+ - cloudflare
60
+ Cf-Ray:
61
+ - 3df3ee046ef84f20-DME
62
+ body:
63
+ encoding: UTF-8
64
+ string: "{}"
65
+ http_version:
66
+ recorded_at: Thu, 18 Jan 2018 19:23:37 GMT
67
+ recorded_with: VCR 3.0.3
@@ -0,0 +1,73 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://jsonplaceholder.typicode.com/posts/1
6
+ body:
7
+ encoding: UTF-8
8
+ string: ''
9
+ headers:
10
+ Accept:
11
+ - application/json
12
+ Content-Type:
13
+ - application/json
14
+ Connection:
15
+ - close
16
+ Host:
17
+ - jsonplaceholder.typicode.com
18
+ User-Agent:
19
+ - http.rb/3.0.0
20
+ response:
21
+ status:
22
+ code: 200
23
+ message: OK
24
+ headers:
25
+ Date:
26
+ - Thu, 18 Jan 2018 19:23:37 GMT
27
+ Content-Type:
28
+ - application/json; charset=utf-8
29
+ Content-Length:
30
+ - '292'
31
+ Connection:
32
+ - close
33
+ Set-Cookie:
34
+ - __cfduid=de31a379444c63694c043184befb627fa1516303417; expires=Fri, 18-Jan-19
35
+ 19:23:37 GMT; path=/; domain=.typicode.com; HttpOnly
36
+ X-Powered-By:
37
+ - Express
38
+ Vary:
39
+ - Origin, Accept-Encoding
40
+ Access-Control-Allow-Credentials:
41
+ - 'true'
42
+ Cache-Control:
43
+ - public, max-age=14400
44
+ Pragma:
45
+ - no-cache
46
+ Expires:
47
+ - Thu, 18 Jan 2018 23:23:37 GMT
48
+ X-Content-Type-Options:
49
+ - nosniff
50
+ Etag:
51
+ - W/"124-yiKdLzqO5gfBrJFrcdJ8Yq0LGnU"
52
+ Via:
53
+ - 1.1 vegur
54
+ Cf-Cache-Status:
55
+ - HIT
56
+ Expect-Ct:
57
+ - max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
58
+ Server:
59
+ - cloudflare
60
+ Cf-Ray:
61
+ - 3df3ee07d8af8f69-DME
62
+ body:
63
+ encoding: UTF-8
64
+ string: |-
65
+ {
66
+ "userId": 1,
67
+ "id": 1,
68
+ "title": "sunt aut facere repellat provident occaecati excepturi optio reprehenderit",
69
+ "body": "quia et suscipit\nsuscipit recusandae consequuntur expedita et cum\nreprehenderit molestiae ut ut quas totam\nnostrum rerum est autem sunt rem eveniet architecto"
70
+ }
71
+ http_version:
72
+ recorded_at: Thu, 18 Jan 2018 19:23:37 GMT
73
+ recorded_with: VCR 3.0.3
@@ -0,0 +1,73 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://jsonplaceholder.typicode.com/posts/1
6
+ body:
7
+ encoding: UTF-8
8
+ string: ''
9
+ headers:
10
+ Accept:
11
+ - application/json
12
+ Content-Type:
13
+ - application/json
14
+ Connection:
15
+ - close
16
+ Host:
17
+ - jsonplaceholder.typicode.com
18
+ User-Agent:
19
+ - http.rb/3.0.0
20
+ response:
21
+ status:
22
+ code: 200
23
+ message: OK
24
+ headers:
25
+ Date:
26
+ - Tue, 06 Mar 2018 08:03:44 GMT
27
+ Content-Type:
28
+ - application/json; charset=utf-8
29
+ Content-Length:
30
+ - '292'
31
+ Connection:
32
+ - close
33
+ Set-Cookie:
34
+ - __cfduid=d9571f40965744abf2545013c91f684451520323424; expires=Wed, 06-Mar-19
35
+ 08:03:44 GMT; path=/; domain=.typicode.com; HttpOnly
36
+ X-Powered-By:
37
+ - Express
38
+ Vary:
39
+ - Origin, Accept-Encoding
40
+ Access-Control-Allow-Credentials:
41
+ - 'true'
42
+ Cache-Control:
43
+ - public, max-age=14400
44
+ Pragma:
45
+ - no-cache
46
+ Expires:
47
+ - Tue, 06 Mar 2018 12:03:44 GMT
48
+ X-Content-Type-Options:
49
+ - nosniff
50
+ Etag:
51
+ - W/"124-yiKdLzqO5gfBrJFrcdJ8Yq0LGnU"
52
+ Via:
53
+ - 1.1 vegur
54
+ Cf-Cache-Status:
55
+ - HIT
56
+ Expect-Ct:
57
+ - max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
58
+ Server:
59
+ - cloudflare
60
+ Cf-Ray:
61
+ - 3f734ebe2ec08d7d-DME
62
+ body:
63
+ encoding: UTF-8
64
+ string: |-
65
+ {
66
+ "userId": 1,
67
+ "id": 1,
68
+ "title": "sunt aut facere repellat provident occaecati excepturi optio reprehenderit",
69
+ "body": "quia et suscipit\nsuscipit recusandae consequuntur expedita et cum\nreprehenderit molestiae ut ut quas totam\nnostrum rerum est autem sunt rem eveniet architecto"
70
+ }
71
+ http_version:
72
+ recorded_at: Tue, 06 Mar 2018 08:10:41 GMT
73
+ recorded_with: VCR 3.0.3
@@ -0,0 +1,71 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: patch
5
+ uri: https://jsonplaceholder.typicode.com/posts/1
6
+ body:
7
+ encoding: UTF-8
8
+ string: '{"title":"Mistie Carter"}'
9
+ headers:
10
+ Accept:
11
+ - application/json
12
+ Content-Type:
13
+ - application/json
14
+ Connection:
15
+ - close
16
+ Host:
17
+ - jsonplaceholder.typicode.com
18
+ User-Agent:
19
+ - http.rb/3.0.0
20
+ response:
21
+ status:
22
+ code: 200
23
+ message: OK
24
+ headers:
25
+ Date:
26
+ - Thu, 18 Jan 2018 19:23:36 GMT
27
+ Content-Type:
28
+ - application/json; charset=utf-8
29
+ Content-Length:
30
+ - '231'
31
+ Connection:
32
+ - close
33
+ Set-Cookie:
34
+ - __cfduid=d3beb9d4061acf63428653caa383356a31516303416; expires=Fri, 18-Jan-19
35
+ 19:23:36 GMT; path=/; domain=.typicode.com; HttpOnly
36
+ X-Powered-By:
37
+ - Express
38
+ Vary:
39
+ - Origin, Accept-Encoding
40
+ Access-Control-Allow-Credentials:
41
+ - 'true'
42
+ Cache-Control:
43
+ - no-cache
44
+ Pragma:
45
+ - no-cache
46
+ Expires:
47
+ - "-1"
48
+ X-Content-Type-Options:
49
+ - nosniff
50
+ Etag:
51
+ - W/"e7-0BduPO3JPrmszuXLELJqrW9+Syw"
52
+ Via:
53
+ - 1.1 vegur
54
+ Expect-Ct:
55
+ - max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
56
+ Server:
57
+ - cloudflare
58
+ Cf-Ray:
59
+ - 3df3ee0148514ede-DME
60
+ body:
61
+ encoding: UTF-8
62
+ string: |-
63
+ {
64
+ "userId": 1,
65
+ "id": 1,
66
+ "title": "Mistie Carter",
67
+ "body": "quia et suscipit\nsuscipit recusandae consequuntur expedita et cum\nreprehenderit molestiae ut ut quas totam\nnostrum rerum est autem sunt rem eveniet architecto"
68
+ }
69
+ http_version:
70
+ recorded_at: Thu, 18 Jan 2018 19:23:36 GMT
71
+ recorded_with: VCR 3.0.3
@@ -0,0 +1,143 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://jsonplaceholder.typicode.com/todos/1
6
+ body:
7
+ encoding: UTF-8
8
+ string: ''
9
+ headers:
10
+ Accept:
11
+ - application/json
12
+ Content-Type:
13
+ - application/json
14
+ Connection:
15
+ - close
16
+ Host:
17
+ - jsonplaceholder.typicode.com
18
+ User-Agent:
19
+ - http.rb/3.0.0
20
+ response:
21
+ status:
22
+ code: 200
23
+ message: OK
24
+ headers:
25
+ Date:
26
+ - Tue, 06 Mar 2018 08:08:27 GMT
27
+ Content-Type:
28
+ - application/json; charset=utf-8
29
+ Content-Length:
30
+ - '83'
31
+ Connection:
32
+ - close
33
+ Set-Cookie:
34
+ - __cfduid=da01438c9302320c8eae5c1e1150c7c3a1520323707; expires=Wed, 06-Mar-19
35
+ 08:08:27 GMT; path=/; domain=.typicode.com; HttpOnly
36
+ X-Powered-By:
37
+ - Express
38
+ Vary:
39
+ - Origin, Accept-Encoding
40
+ Access-Control-Allow-Credentials:
41
+ - 'true'
42
+ Cache-Control:
43
+ - public, max-age=14400
44
+ Pragma:
45
+ - no-cache
46
+ Expires:
47
+ - Tue, 06 Mar 2018 12:08:27 GMT
48
+ X-Content-Type-Options:
49
+ - nosniff
50
+ Etag:
51
+ - W/"53-hfEnumeNh6YirfjyjaujcOPPT+s"
52
+ Via:
53
+ - 1.1 vegur
54
+ Cf-Cache-Status:
55
+ - REVALIDATED
56
+ Expect-Ct:
57
+ - max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
58
+ Server:
59
+ - cloudflare
60
+ Cf-Ray:
61
+ - 3f7355a1e9b48d8f-DME
62
+ body:
63
+ encoding: UTF-8
64
+ string: |-
65
+ {
66
+ "userId": 1,
67
+ "id": 1,
68
+ "title": "delectus aut autem",
69
+ "completed": false
70
+ }
71
+ http_version:
72
+ recorded_at: Tue, 06 Mar 2018 08:15:24 GMT
73
+ - request:
74
+ method: get
75
+ uri: https://jsonplaceholder.typicode.com/todos/1/
76
+ body:
77
+ encoding: UTF-8
78
+ string: ''
79
+ headers:
80
+ Accept:
81
+ - application/json
82
+ Content-Type:
83
+ - application/json
84
+ Connection:
85
+ - close
86
+ Host:
87
+ - jsonplaceholder.typicode.com
88
+ User-Agent:
89
+ - http.rb/3.0.0
90
+ response:
91
+ status:
92
+ code: 200
93
+ message: OK
94
+ headers:
95
+ Date:
96
+ - Tue, 06 Mar 2018 09:16:26 GMT
97
+ Content-Type:
98
+ - application/json; charset=utf-8
99
+ Content-Length:
100
+ - '83'
101
+ Connection:
102
+ - close
103
+ Set-Cookie:
104
+ - __cfduid=ddae63477dd3d1f72cfcf365177d4d5ff1520327786; expires=Wed, 06-Mar-19
105
+ 09:16:26 GMT; path=/; domain=.typicode.com; HttpOnly
106
+ X-Powered-By:
107
+ - Express
108
+ Vary:
109
+ - Origin, Accept-Encoding
110
+ Access-Control-Allow-Credentials:
111
+ - 'true'
112
+ Cache-Control:
113
+ - public, max-age=14400
114
+ Pragma:
115
+ - no-cache
116
+ Expires:
117
+ - Tue, 06 Mar 2018 13:16:26 GMT
118
+ X-Content-Type-Options:
119
+ - nosniff
120
+ Etag:
121
+ - W/"53-hfEnumeNh6YirfjyjaujcOPPT+s"
122
+ Via:
123
+ - 1.1 vegur
124
+ Cf-Cache-Status:
125
+ - MISS
126
+ Expect-Ct:
127
+ - max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
128
+ Server:
129
+ - cloudflare
130
+ Cf-Ray:
131
+ - 3f73b9376c084e2a-DME
132
+ body:
133
+ encoding: UTF-8
134
+ string: |-
135
+ {
136
+ "userId": 1,
137
+ "id": 1,
138
+ "title": "delectus aut autem",
139
+ "completed": false
140
+ }
141
+ http_version:
142
+ recorded_at: Tue, 06 Mar 2018 09:23:23 GMT
143
+ recorded_with: VCR 3.0.3
@@ -0,0 +1,1049 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://jsonplaceholder.typicode.com/users/1/posts
6
+ body:
7
+ encoding: UTF-8
8
+ string: ''
9
+ headers:
10
+ Accept:
11
+ - application/json
12
+ Content-Type:
13
+ - application/json
14
+ Connection:
15
+ - close
16
+ Host:
17
+ - jsonplaceholder.typicode.com
18
+ User-Agent:
19
+ - http.rb/3.0.0
20
+ response:
21
+ status:
22
+ code: 200
23
+ message: OK
24
+ headers:
25
+ Date:
26
+ - Tue, 06 Mar 2018 07:32:14 GMT
27
+ Content-Type:
28
+ - application/json; charset=utf-8
29
+ Transfer-Encoding:
30
+ - chunked
31
+ Connection:
32
+ - close
33
+ Set-Cookie:
34
+ - __cfduid=d6ac46d75270de6e006d2c9651b44b7a51520321534; expires=Wed, 06-Mar-19
35
+ 07:32:14 GMT; path=/; domain=.typicode.com; HttpOnly
36
+ X-Powered-By:
37
+ - Express
38
+ Vary:
39
+ - Origin, Accept-Encoding
40
+ Access-Control-Allow-Credentials:
41
+ - 'true'
42
+ Cache-Control:
43
+ - public, max-age=14400
44
+ Pragma:
45
+ - no-cache
46
+ Expires:
47
+ - Tue, 06 Mar 2018 11:32:14 GMT
48
+ X-Content-Type-Options:
49
+ - nosniff
50
+ Etag:
51
+ - W/"aa6-j2NSH739l9uq40OywFMn7Y0C/iY"
52
+ Via:
53
+ - 1.1 vegur
54
+ Cf-Cache-Status:
55
+ - HIT
56
+ Expect-Ct:
57
+ - max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
58
+ Server:
59
+ - cloudflare
60
+ Cf-Ray:
61
+ - 3f7320945f8b8dd1-DME
62
+ body:
63
+ encoding: UTF-8
64
+ string: |-
65
+ [
66
+ {
67
+ "userId": 1,
68
+ "id": 1,
69
+ "title": "sunt aut facere repellat provident occaecati excepturi optio reprehenderit",
70
+ "body": "quia et suscipit\nsuscipit recusandae consequuntur expedita et cum\nreprehenderit molestiae ut ut quas totam\nnostrum rerum est autem sunt rem eveniet architecto"
71
+ },
72
+ {
73
+ "userId": 1,
74
+ "id": 2,
75
+ "title": "qui est esse",
76
+ "body": "est rerum tempore vitae\nsequi sint nihil reprehenderit dolor beatae ea dolores neque\nfugiat blanditiis voluptate porro vel nihil molestiae ut reiciendis\nqui aperiam non debitis possimus qui neque nisi nulla"
77
+ },
78
+ {
79
+ "userId": 1,
80
+ "id": 3,
81
+ "title": "ea molestias quasi exercitationem repellat qui ipsa sit aut",
82
+ "body": "et iusto sed quo iure\nvoluptatem occaecati omnis eligendi aut ad\nvoluptatem doloribus vel accusantium quis pariatur\nmolestiae porro eius odio et labore et velit aut"
83
+ },
84
+ {
85
+ "userId": 1,
86
+ "id": 4,
87
+ "title": "eum et est occaecati",
88
+ "body": "ullam et saepe reiciendis voluptatem adipisci\nsit amet autem assumenda provident rerum culpa\nquis hic commodi nesciunt rem tenetur doloremque ipsam iure\nquis sunt voluptatem rerum illo velit"
89
+ },
90
+ {
91
+ "userId": 1,
92
+ "id": 5,
93
+ "title": "nesciunt quas odio",
94
+ "body": "repudiandae veniam quaerat sunt sed\nalias aut fugiat sit autem sed est\nvoluptatem omnis possimus esse voluptatibus quis\nest aut tenetur dolor neque"
95
+ },
96
+ {
97
+ "userId": 1,
98
+ "id": 6,
99
+ "title": "dolorem eum magni eos aperiam quia",
100
+ "body": "ut aspernatur corporis harum nihil quis provident sequi\nmollitia nobis aliquid molestiae\nperspiciatis et ea nemo ab reprehenderit accusantium quas\nvoluptate dolores velit et doloremque molestiae"
101
+ },
102
+ {
103
+ "userId": 1,
104
+ "id": 7,
105
+ "title": "magnam facilis autem",
106
+ "body": "dolore placeat quibusdam ea quo vitae\nmagni quis enim qui quis quo nemo aut saepe\nquidem repellat excepturi ut quia\nsunt ut sequi eos ea sed quas"
107
+ },
108
+ {
109
+ "userId": 1,
110
+ "id": 8,
111
+ "title": "dolorem dolore est ipsam",
112
+ "body": "dignissimos aperiam dolorem qui eum\nfacilis quibusdam animi sint suscipit qui sint possimus cum\nquaerat magni maiores excepturi\nipsam ut commodi dolor voluptatum modi aut vitae"
113
+ },
114
+ {
115
+ "userId": 1,
116
+ "id": 9,
117
+ "title": "nesciunt iure omnis dolorem tempora et accusantium",
118
+ "body": "consectetur animi nesciunt iure dolore\nenim quia ad\nveniam autem ut quam aut nobis\net est aut quod aut provident voluptas autem voluptas"
119
+ },
120
+ {
121
+ "userId": 1,
122
+ "id": 10,
123
+ "title": "optio molestias id quia eum",
124
+ "body": "quo et expedita modi cum officia vel magni\ndoloribus qui repudiandae\nvero nisi sit\nquos veniam quod sed accusamus veritatis error"
125
+ }
126
+ ]
127
+ http_version:
128
+ recorded_at: Tue, 06 Mar 2018 07:39:10 GMT
129
+ - request:
130
+ method: get
131
+ uri: https://jsonplaceholder.typicode.com/users/1//posts/
132
+ body:
133
+ encoding: UTF-8
134
+ string: ''
135
+ headers:
136
+ Accept:
137
+ - application/json
138
+ Content-Type:
139
+ - application/json
140
+ Connection:
141
+ - close
142
+ Host:
143
+ - jsonplaceholder.typicode.com
144
+ User-Agent:
145
+ - http.rb/3.0.0
146
+ response:
147
+ status:
148
+ code: 404
149
+ message: Not Found
150
+ headers:
151
+ Date:
152
+ - Tue, 06 Mar 2018 09:00:30 GMT
153
+ Content-Type:
154
+ - application/json; charset=utf-8
155
+ Content-Length:
156
+ - '2'
157
+ Connection:
158
+ - close
159
+ Set-Cookie:
160
+ - __cfduid=d854efa8be90aee7ff7c69e5367c2953b1520326830; expires=Wed, 06-Mar-19
161
+ 09:00:30 GMT; path=/; domain=.typicode.com; HttpOnly
162
+ X-Powered-By:
163
+ - Express
164
+ Vary:
165
+ - Origin, Accept-Encoding
166
+ Access-Control-Allow-Credentials:
167
+ - 'true'
168
+ Cache-Control:
169
+ - public, max-age=14400
170
+ Pragma:
171
+ - no-cache
172
+ Expires:
173
+ - Tue, 06 Mar 2018 13:00:30 GMT
174
+ X-Content-Type-Options:
175
+ - nosniff
176
+ Etag:
177
+ - W/"2-vyGp6PvFo4RvsFtPoIWeCReyIC8"
178
+ Via:
179
+ - 1.1 vegur
180
+ Cf-Cache-Status:
181
+ - MISS
182
+ Expect-Ct:
183
+ - max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
184
+ Server:
185
+ - cloudflare
186
+ Cf-Ray:
187
+ - 3f73a1dfce8a8d8f-DME
188
+ body:
189
+ encoding: UTF-8
190
+ string: "{}"
191
+ http_version:
192
+ recorded_at: Tue, 06 Mar 2018 09:07:26 GMT
193
+ - request:
194
+ method: get
195
+ uri: https://jsonplaceholder.typicode.com/users/1/posts/
196
+ body:
197
+ encoding: UTF-8
198
+ string: ''
199
+ headers:
200
+ Accept:
201
+ - application/json
202
+ Content-Type:
203
+ - application/json
204
+ Connection:
205
+ - close
206
+ Host:
207
+ - jsonplaceholder.typicode.com
208
+ User-Agent:
209
+ - http.rb/3.0.0
210
+ response:
211
+ status:
212
+ code: 200
213
+ message: OK
214
+ headers:
215
+ Date:
216
+ - Tue, 06 Mar 2018 09:03:56 GMT
217
+ Content-Type:
218
+ - application/json; charset=utf-8
219
+ Transfer-Encoding:
220
+ - chunked
221
+ Connection:
222
+ - close
223
+ Set-Cookie:
224
+ - __cfduid=d08ed0931782d331736cda7f9197e73cc1520327036; expires=Wed, 06-Mar-19
225
+ 09:03:56 GMT; path=/; domain=.typicode.com; HttpOnly
226
+ X-Powered-By:
227
+ - Express
228
+ Vary:
229
+ - Origin, Accept-Encoding
230
+ Access-Control-Allow-Credentials:
231
+ - 'true'
232
+ Cache-Control:
233
+ - public, max-age=14400
234
+ Pragma:
235
+ - no-cache
236
+ Expires:
237
+ - Tue, 06 Mar 2018 13:03:56 GMT
238
+ X-Content-Type-Options:
239
+ - nosniff
240
+ Etag:
241
+ - W/"aa6-j2NSH739l9uq40OywFMn7Y0C/iY"
242
+ Via:
243
+ - 1.1 vegur
244
+ Cf-Cache-Status:
245
+ - MISS
246
+ Expect-Ct:
247
+ - max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
248
+ Server:
249
+ - cloudflare
250
+ Cf-Ray:
251
+ - 3f73a6e87ab38e0d-DME
252
+ body:
253
+ encoding: UTF-8
254
+ string: |-
255
+ [
256
+ {
257
+ "userId": 1,
258
+ "id": 1,
259
+ "title": "sunt aut facere repellat provident occaecati excepturi optio reprehenderit",
260
+ "body": "quia et suscipit\nsuscipit recusandae consequuntur expedita et cum\nreprehenderit molestiae ut ut quas totam\nnostrum rerum est autem sunt rem eveniet architecto"
261
+ },
262
+ {
263
+ "userId": 1,
264
+ "id": 2,
265
+ "title": "qui est esse",
266
+ "body": "est rerum tempore vitae\nsequi sint nihil reprehenderit dolor beatae ea dolores neque\nfugiat blanditiis voluptate porro vel nihil molestiae ut reiciendis\nqui aperiam non debitis possimus qui neque nisi nulla"
267
+ },
268
+ {
269
+ "userId": 1,
270
+ "id": 3,
271
+ "title": "ea molestias quasi exercitationem repellat qui ipsa sit aut",
272
+ "body": "et iusto sed quo iure\nvoluptatem occaecati omnis eligendi aut ad\nvoluptatem doloribus vel accusantium quis pariatur\nmolestiae porro eius odio et labore et velit aut"
273
+ },
274
+ {
275
+ "userId": 1,
276
+ "id": 4,
277
+ "title": "eum et est occaecati",
278
+ "body": "ullam et saepe reiciendis voluptatem adipisci\nsit amet autem assumenda provident rerum culpa\nquis hic commodi nesciunt rem tenetur doloremque ipsam iure\nquis sunt voluptatem rerum illo velit"
279
+ },
280
+ {
281
+ "userId": 1,
282
+ "id": 5,
283
+ "title": "nesciunt quas odio",
284
+ "body": "repudiandae veniam quaerat sunt sed\nalias aut fugiat sit autem sed est\nvoluptatem omnis possimus esse voluptatibus quis\nest aut tenetur dolor neque"
285
+ },
286
+ {
287
+ "userId": 1,
288
+ "id": 6,
289
+ "title": "dolorem eum magni eos aperiam quia",
290
+ "body": "ut aspernatur corporis harum nihil quis provident sequi\nmollitia nobis aliquid molestiae\nperspiciatis et ea nemo ab reprehenderit accusantium quas\nvoluptate dolores velit et doloremque molestiae"
291
+ },
292
+ {
293
+ "userId": 1,
294
+ "id": 7,
295
+ "title": "magnam facilis autem",
296
+ "body": "dolore placeat quibusdam ea quo vitae\nmagni quis enim qui quis quo nemo aut saepe\nquidem repellat excepturi ut quia\nsunt ut sequi eos ea sed quas"
297
+ },
298
+ {
299
+ "userId": 1,
300
+ "id": 8,
301
+ "title": "dolorem dolore est ipsam",
302
+ "body": "dignissimos aperiam dolorem qui eum\nfacilis quibusdam animi sint suscipit qui sint possimus cum\nquaerat magni maiores excepturi\nipsam ut commodi dolor voluptatum modi aut vitae"
303
+ },
304
+ {
305
+ "userId": 1,
306
+ "id": 9,
307
+ "title": "nesciunt iure omnis dolorem tempora et accusantium",
308
+ "body": "consectetur animi nesciunt iure dolore\nenim quia ad\nveniam autem ut quam aut nobis\net est aut quod aut provident voluptas autem voluptas"
309
+ },
310
+ {
311
+ "userId": 1,
312
+ "id": 10,
313
+ "title": "optio molestias id quia eum",
314
+ "body": "quo et expedita modi cum officia vel magni\ndoloribus qui repudiandae\nvero nisi sit\nquos veniam quod sed accusamus veritatis error"
315
+ }
316
+ ]
317
+ http_version:
318
+ recorded_at: Tue, 06 Mar 2018 09:10:53 GMT
319
+ - request:
320
+ method: get
321
+ uri: https://jsonplaceholder.typicode.com/posts
322
+ body:
323
+ encoding: UTF-8
324
+ string: ''
325
+ headers:
326
+ Accept:
327
+ - application/json
328
+ Content-Type:
329
+ - application/json
330
+ Connection:
331
+ - close
332
+ Host:
333
+ - jsonplaceholder.typicode.com
334
+ User-Agent:
335
+ - http.rb/3.0.0
336
+ response:
337
+ status:
338
+ code: 200
339
+ message: OK
340
+ headers:
341
+ Date:
342
+ - Tue, 06 Mar 2018 10:06:09 GMT
343
+ Content-Type:
344
+ - application/json; charset=utf-8
345
+ Transfer-Encoding:
346
+ - chunked
347
+ Connection:
348
+ - close
349
+ Set-Cookie:
350
+ - __cfduid=d9edd1072af9690d001d0c82fb174d5001520330769; expires=Wed, 06-Mar-19
351
+ 10:06:09 GMT; path=/; domain=.typicode.com; HttpOnly
352
+ X-Powered-By:
353
+ - Express
354
+ Vary:
355
+ - Origin, Accept-Encoding
356
+ Access-Control-Allow-Credentials:
357
+ - 'true'
358
+ Cache-Control:
359
+ - public, max-age=14400
360
+ Pragma:
361
+ - no-cache
362
+ Expires:
363
+ - Tue, 06 Mar 2018 14:06:09 GMT
364
+ X-Content-Type-Options:
365
+ - nosniff
366
+ Etag:
367
+ - W/"6b80-Ybsq/K6GwwqrYkAsFxqDXGC7DoM"
368
+ Via:
369
+ - 1.1 vegur
370
+ Cf-Cache-Status:
371
+ - HIT
372
+ Expect-Ct:
373
+ - max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
374
+ Server:
375
+ - cloudflare
376
+ Cf-Ray:
377
+ - 3f74020e2d1b8dfb-DME
378
+ body:
379
+ encoding: UTF-8
380
+ string: |-
381
+ [
382
+ {
383
+ "userId": 1,
384
+ "id": 1,
385
+ "title": "sunt aut facere repellat provident occaecati excepturi optio reprehenderit",
386
+ "body": "quia et suscipit\nsuscipit recusandae consequuntur expedita et cum\nreprehenderit molestiae ut ut quas totam\nnostrum rerum est autem sunt rem eveniet architecto"
387
+ },
388
+ {
389
+ "userId": 1,
390
+ "id": 2,
391
+ "title": "qui est esse",
392
+ "body": "est rerum tempore vitae\nsequi sint nihil reprehenderit dolor beatae ea dolores neque\nfugiat blanditiis voluptate porro vel nihil molestiae ut reiciendis\nqui aperiam non debitis possimus qui neque nisi nulla"
393
+ },
394
+ {
395
+ "userId": 1,
396
+ "id": 3,
397
+ "title": "ea molestias quasi exercitationem repellat qui ipsa sit aut",
398
+ "body": "et iusto sed quo iure\nvoluptatem occaecati omnis eligendi aut ad\nvoluptatem doloribus vel accusantium quis pariatur\nmolestiae porro eius odio et labore et velit aut"
399
+ },
400
+ {
401
+ "userId": 1,
402
+ "id": 4,
403
+ "title": "eum et est occaecati",
404
+ "body": "ullam et saepe reiciendis voluptatem adipisci\nsit amet autem assumenda provident rerum culpa\nquis hic commodi nesciunt rem tenetur doloremque ipsam iure\nquis sunt voluptatem rerum illo velit"
405
+ },
406
+ {
407
+ "userId": 1,
408
+ "id": 5,
409
+ "title": "nesciunt quas odio",
410
+ "body": "repudiandae veniam quaerat sunt sed\nalias aut fugiat sit autem sed est\nvoluptatem omnis possimus esse voluptatibus quis\nest aut tenetur dolor neque"
411
+ },
412
+ {
413
+ "userId": 1,
414
+ "id": 6,
415
+ "title": "dolorem eum magni eos aperiam quia",
416
+ "body": "ut aspernatur corporis harum nihil quis provident sequi\nmollitia nobis aliquid molestiae\nperspiciatis et ea nemo ab reprehenderit accusantium quas\nvoluptate dolores velit et doloremque molestiae"
417
+ },
418
+ {
419
+ "userId": 1,
420
+ "id": 7,
421
+ "title": "magnam facilis autem",
422
+ "body": "dolore placeat quibusdam ea quo vitae\nmagni quis enim qui quis quo nemo aut saepe\nquidem repellat excepturi ut quia\nsunt ut sequi eos ea sed quas"
423
+ },
424
+ {
425
+ "userId": 1,
426
+ "id": 8,
427
+ "title": "dolorem dolore est ipsam",
428
+ "body": "dignissimos aperiam dolorem qui eum\nfacilis quibusdam animi sint suscipit qui sint possimus cum\nquaerat magni maiores excepturi\nipsam ut commodi dolor voluptatum modi aut vitae"
429
+ },
430
+ {
431
+ "userId": 1,
432
+ "id": 9,
433
+ "title": "nesciunt iure omnis dolorem tempora et accusantium",
434
+ "body": "consectetur animi nesciunt iure dolore\nenim quia ad\nveniam autem ut quam aut nobis\net est aut quod aut provident voluptas autem voluptas"
435
+ },
436
+ {
437
+ "userId": 1,
438
+ "id": 10,
439
+ "title": "optio molestias id quia eum",
440
+ "body": "quo et expedita modi cum officia vel magni\ndoloribus qui repudiandae\nvero nisi sit\nquos veniam quod sed accusamus veritatis error"
441
+ },
442
+ {
443
+ "userId": 2,
444
+ "id": 11,
445
+ "title": "et ea vero quia laudantium autem",
446
+ "body": "delectus reiciendis molestiae occaecati non minima eveniet qui voluptatibus\naccusamus in eum beatae sit\nvel qui neque voluptates ut commodi qui incidunt\nut animi commodi"
447
+ },
448
+ {
449
+ "userId": 2,
450
+ "id": 12,
451
+ "title": "in quibusdam tempore odit est dolorem",
452
+ "body": "itaque id aut magnam\npraesentium quia et ea odit et ea voluptas et\nsapiente quia nihil amet occaecati quia id voluptatem\nincidunt ea est distinctio odio"
453
+ },
454
+ {
455
+ "userId": 2,
456
+ "id": 13,
457
+ "title": "dolorum ut in voluptas mollitia et saepe quo animi",
458
+ "body": "aut dicta possimus sint mollitia voluptas commodi quo doloremque\niste corrupti reiciendis voluptatem eius rerum\nsit cumque quod eligendi laborum minima\nperferendis recusandae assumenda consectetur porro architecto ipsum ipsam"
459
+ },
460
+ {
461
+ "userId": 2,
462
+ "id": 14,
463
+ "title": "voluptatem eligendi optio",
464
+ "body": "fuga et accusamus dolorum perferendis illo voluptas\nnon doloremque neque facere\nad qui dolorum molestiae beatae\nsed aut voluptas totam sit illum"
465
+ },
466
+ {
467
+ "userId": 2,
468
+ "id": 15,
469
+ "title": "eveniet quod temporibus",
470
+ "body": "reprehenderit quos placeat\nvelit minima officia dolores impedit repudiandae molestiae nam\nvoluptas recusandae quis delectus\nofficiis harum fugiat vitae"
471
+ },
472
+ {
473
+ "userId": 2,
474
+ "id": 16,
475
+ "title": "sint suscipit perspiciatis velit dolorum rerum ipsa laboriosam odio",
476
+ "body": "suscipit nam nisi quo aperiam aut\nasperiores eos fugit maiores voluptatibus quia\nvoluptatem quis ullam qui in alias quia est\nconsequatur magni mollitia accusamus ea nisi voluptate dicta"
477
+ },
478
+ {
479
+ "userId": 2,
480
+ "id": 17,
481
+ "title": "fugit voluptas sed molestias voluptatem provident",
482
+ "body": "eos voluptas et aut odit natus earum\naspernatur fuga molestiae ullam\ndeserunt ratione qui eos\nqui nihil ratione nemo velit ut aut id quo"
483
+ },
484
+ {
485
+ "userId": 2,
486
+ "id": 18,
487
+ "title": "voluptate et itaque vero tempora molestiae",
488
+ "body": "eveniet quo quis\nlaborum totam consequatur non dolor\nut et est repudiandae\nest voluptatem vel debitis et magnam"
489
+ },
490
+ {
491
+ "userId": 2,
492
+ "id": 19,
493
+ "title": "adipisci placeat illum aut reiciendis qui",
494
+ "body": "illum quis cupiditate provident sit magnam\nea sed aut omnis\nveniam maiores ullam consequatur atque\nadipisci quo iste expedita sit quos voluptas"
495
+ },
496
+ {
497
+ "userId": 2,
498
+ "id": 20,
499
+ "title": "doloribus ad provident suscipit at",
500
+ "body": "qui consequuntur ducimus possimus quisquam amet similique\nsuscipit porro ipsam amet\neos veritatis officiis exercitationem vel fugit aut necessitatibus totam\nomnis rerum consequatur expedita quidem cumque explicabo"
501
+ },
502
+ {
503
+ "userId": 3,
504
+ "id": 21,
505
+ "title": "asperiores ea ipsam voluptatibus modi minima quia sint",
506
+ "body": "repellat aliquid praesentium dolorem quo\nsed totam minus non itaque\nnihil labore molestiae sunt dolor eveniet hic recusandae veniam\ntempora et tenetur expedita sunt"
507
+ },
508
+ {
509
+ "userId": 3,
510
+ "id": 22,
511
+ "title": "dolor sint quo a velit explicabo quia nam",
512
+ "body": "eos qui et ipsum ipsam suscipit aut\nsed omnis non odio\nexpedita earum mollitia molestiae aut atque rem suscipit\nnam impedit esse"
513
+ },
514
+ {
515
+ "userId": 3,
516
+ "id": 23,
517
+ "title": "maxime id vitae nihil numquam",
518
+ "body": "veritatis unde neque eligendi\nquae quod architecto quo neque vitae\nest illo sit tempora doloremque fugit quod\net et vel beatae sequi ullam sed tenetur perspiciatis"
519
+ },
520
+ {
521
+ "userId": 3,
522
+ "id": 24,
523
+ "title": "autem hic labore sunt dolores incidunt",
524
+ "body": "enim et ex nulla\nomnis voluptas quia qui\nvoluptatem consequatur numquam aliquam sunt\ntotam recusandae id dignissimos aut sed asperiores deserunt"
525
+ },
526
+ {
527
+ "userId": 3,
528
+ "id": 25,
529
+ "title": "rem alias distinctio quo quis",
530
+ "body": "ullam consequatur ut\nomnis quis sit vel consequuntur\nipsa eligendi ipsum molestiae et omnis error nostrum\nmolestiae illo tempore quia et distinctio"
531
+ },
532
+ {
533
+ "userId": 3,
534
+ "id": 26,
535
+ "title": "est et quae odit qui non",
536
+ "body": "similique esse doloribus nihil accusamus\nomnis dolorem fuga consequuntur reprehenderit fugit recusandae temporibus\nperspiciatis cum ut laudantium\nomnis aut molestiae vel vero"
537
+ },
538
+ {
539
+ "userId": 3,
540
+ "id": 27,
541
+ "title": "quasi id et eos tenetur aut quo autem",
542
+ "body": "eum sed dolores ipsam sint possimus debitis occaecati\ndebitis qui qui et\nut placeat enim earum aut odit facilis\nconsequatur suscipit necessitatibus rerum sed inventore temporibus consequatur"
543
+ },
544
+ {
545
+ "userId": 3,
546
+ "id": 28,
547
+ "title": "delectus ullam et corporis nulla voluptas sequi",
548
+ "body": "non et quaerat ex quae ad maiores\nmaiores recusandae totam aut blanditiis mollitia quas illo\nut voluptatibus voluptatem\nsimilique nostrum eum"
549
+ },
550
+ {
551
+ "userId": 3,
552
+ "id": 29,
553
+ "title": "iusto eius quod necessitatibus culpa ea",
554
+ "body": "odit magnam ut saepe sed non qui\ntempora atque nihil\naccusamus illum doloribus illo dolor\neligendi repudiandae odit magni similique sed cum maiores"
555
+ },
556
+ {
557
+ "userId": 3,
558
+ "id": 30,
559
+ "title": "a quo magni similique perferendis",
560
+ "body": "alias dolor cumque\nimpedit blanditiis non eveniet odio maxime\nblanditiis amet eius quis tempora quia autem rem\na provident perspiciatis quia"
561
+ },
562
+ {
563
+ "userId": 4,
564
+ "id": 31,
565
+ "title": "ullam ut quidem id aut vel consequuntur",
566
+ "body": "debitis eius sed quibusdam non quis consectetur vitae\nimpedit ut qui consequatur sed aut in\nquidem sit nostrum et maiores adipisci atque\nquaerat voluptatem adipisci repudiandae"
567
+ },
568
+ {
569
+ "userId": 4,
570
+ "id": 32,
571
+ "title": "doloremque illum aliquid sunt",
572
+ "body": "deserunt eos nobis asperiores et hic\nest debitis repellat molestiae optio\nnihil ratione ut eos beatae quibusdam distinctio maiores\nearum voluptates et aut adipisci ea maiores voluptas maxime"
573
+ },
574
+ {
575
+ "userId": 4,
576
+ "id": 33,
577
+ "title": "qui explicabo molestiae dolorem",
578
+ "body": "rerum ut et numquam laborum odit est sit\nid qui sint in\nquasi tenetur tempore aperiam et quaerat qui in\nrerum officiis sequi cumque quod"
579
+ },
580
+ {
581
+ "userId": 4,
582
+ "id": 34,
583
+ "title": "magnam ut rerum iure",
584
+ "body": "ea velit perferendis earum ut voluptatem voluptate itaque iusto\ntotam pariatur in\nnemo voluptatem voluptatem autem magni tempora minima in\nest distinctio qui assumenda accusamus dignissimos officia nesciunt nobis"
585
+ },
586
+ {
587
+ "userId": 4,
588
+ "id": 35,
589
+ "title": "id nihil consequatur molestias animi provident",
590
+ "body": "nisi error delectus possimus ut eligendi vitae\nplaceat eos harum cupiditate facilis reprehenderit voluptatem beatae\nmodi ducimus quo illum voluptas eligendi\net nobis quia fugit"
591
+ },
592
+ {
593
+ "userId": 4,
594
+ "id": 36,
595
+ "title": "fuga nam accusamus voluptas reiciendis itaque",
596
+ "body": "ad mollitia et omnis minus architecto odit\nvoluptas doloremque maxime aut non ipsa qui alias veniam\nblanditiis culpa aut quia nihil cumque facere et occaecati\nqui aspernatur quia eaque ut aperiam inventore"
597
+ },
598
+ {
599
+ "userId": 4,
600
+ "id": 37,
601
+ "title": "provident vel ut sit ratione est",
602
+ "body": "debitis et eaque non officia sed nesciunt pariatur vel\nvoluptatem iste vero et ea\nnumquam aut expedita ipsum nulla in\nvoluptates omnis consequatur aut enim officiis in quam qui"
603
+ },
604
+ {
605
+ "userId": 4,
606
+ "id": 38,
607
+ "title": "explicabo et eos deleniti nostrum ab id repellendus",
608
+ "body": "animi esse sit aut sit nesciunt assumenda eum voluptas\nquia voluptatibus provident quia necessitatibus ea\nrerum repudiandae quia voluptatem delectus fugit aut id quia\nratione optio eos iusto veniam iure"
609
+ },
610
+ {
611
+ "userId": 4,
612
+ "id": 39,
613
+ "title": "eos dolorem iste accusantium est eaque quam",
614
+ "body": "corporis rerum ducimus vel eum accusantium\nmaxime aspernatur a porro possimus iste omnis\nest in deleniti asperiores fuga aut\nvoluptas sapiente vel dolore minus voluptatem incidunt ex"
615
+ },
616
+ {
617
+ "userId": 4,
618
+ "id": 40,
619
+ "title": "enim quo cumque",
620
+ "body": "ut voluptatum aliquid illo tenetur nemo sequi quo facilis\nipsum rem optio mollitia quas\nvoluptatem eum voluptas qui\nunde omnis voluptatem iure quasi maxime voluptas nam"
621
+ },
622
+ {
623
+ "userId": 5,
624
+ "id": 41,
625
+ "title": "non est facere",
626
+ "body": "molestias id nostrum\nexcepturi molestiae dolore omnis repellendus quaerat saepe\nconsectetur iste quaerat tenetur asperiores accusamus ex ut\nnam quidem est ducimus sunt debitis saepe"
627
+ },
628
+ {
629
+ "userId": 5,
630
+ "id": 42,
631
+ "title": "commodi ullam sint et excepturi error explicabo praesentium voluptas",
632
+ "body": "odio fugit voluptatum ducimus earum autem est incidunt voluptatem\nodit reiciendis aliquam sunt sequi nulla dolorem\nnon facere repellendus voluptates quia\nratione harum vitae ut"
633
+ },
634
+ {
635
+ "userId": 5,
636
+ "id": 43,
637
+ "title": "eligendi iste nostrum consequuntur adipisci praesentium sit beatae perferendis",
638
+ "body": "similique fugit est\nillum et dolorum harum et voluptate eaque quidem\nexercitationem quos nam commodi possimus cum odio nihil nulla\ndolorum exercitationem magnam ex et a et distinctio debitis"
639
+ },
640
+ {
641
+ "userId": 5,
642
+ "id": 44,
643
+ "title": "optio dolor molestias sit",
644
+ "body": "temporibus est consectetur dolore\net libero debitis vel velit laboriosam quia\nipsum quibusdam qui itaque fuga rem aut\nea et iure quam sed maxime ut distinctio quae"
645
+ },
646
+ {
647
+ "userId": 5,
648
+ "id": 45,
649
+ "title": "ut numquam possimus omnis eius suscipit laudantium iure",
650
+ "body": "est natus reiciendis nihil possimus aut provident\nex et dolor\nrepellat pariatur est\nnobis rerum repellendus dolorem autem"
651
+ },
652
+ {
653
+ "userId": 5,
654
+ "id": 46,
655
+ "title": "aut quo modi neque nostrum ducimus",
656
+ "body": "voluptatem quisquam iste\nvoluptatibus natus officiis facilis dolorem\nquis quas ipsam\nvel et voluptatum in aliquid"
657
+ },
658
+ {
659
+ "userId": 5,
660
+ "id": 47,
661
+ "title": "quibusdam cumque rem aut deserunt",
662
+ "body": "voluptatem assumenda ut qui ut cupiditate aut impedit veniam\noccaecati nemo illum voluptatem laudantium\nmolestiae beatae rerum ea iure soluta nostrum\neligendi et voluptate"
663
+ },
664
+ {
665
+ "userId": 5,
666
+ "id": 48,
667
+ "title": "ut voluptatem illum ea doloribus itaque eos",
668
+ "body": "voluptates quo voluptatem facilis iure occaecati\nvel assumenda rerum officia et\nillum perspiciatis ab deleniti\nlaudantium repellat ad ut et autem reprehenderit"
669
+ },
670
+ {
671
+ "userId": 5,
672
+ "id": 49,
673
+ "title": "laborum non sunt aut ut assumenda perspiciatis voluptas",
674
+ "body": "inventore ab sint\nnatus fugit id nulla sequi architecto nihil quaerat\neos tenetur in in eum veritatis non\nquibusdam officiis aspernatur cumque aut commodi aut"
675
+ },
676
+ {
677
+ "userId": 5,
678
+ "id": 50,
679
+ "title": "repellendus qui recusandae incidunt voluptates tenetur qui omnis exercitationem",
680
+ "body": "error suscipit maxime adipisci consequuntur recusandae\nvoluptas eligendi et est et voluptates\nquia distinctio ab amet quaerat molestiae et vitae\nadipisci impedit sequi nesciunt quis consectetur"
681
+ },
682
+ {
683
+ "userId": 6,
684
+ "id": 51,
685
+ "title": "soluta aliquam aperiam consequatur illo quis voluptas",
686
+ "body": "sunt dolores aut doloribus\ndolore doloribus voluptates tempora et\ndoloremque et quo\ncum asperiores sit consectetur dolorem"
687
+ },
688
+ {
689
+ "userId": 6,
690
+ "id": 52,
691
+ "title": "qui enim et consequuntur quia animi quis voluptate quibusdam",
692
+ "body": "iusto est quibusdam fuga quas quaerat molestias\na enim ut sit accusamus enim\ntemporibus iusto accusantium provident architecto\nsoluta esse reprehenderit qui laborum"
693
+ },
694
+ {
695
+ "userId": 6,
696
+ "id": 53,
697
+ "title": "ut quo aut ducimus alias",
698
+ "body": "minima harum praesentium eum rerum illo dolore\nquasi exercitationem rerum nam\nporro quis neque quo\nconsequatur minus dolor quidem veritatis sunt non explicabo similique"
699
+ },
700
+ {
701
+ "userId": 6,
702
+ "id": 54,
703
+ "title": "sit asperiores ipsam eveniet odio non quia",
704
+ "body": "totam corporis dignissimos\nvitae dolorem ut occaecati accusamus\nex velit deserunt\net exercitationem vero incidunt corrupti mollitia"
705
+ },
706
+ {
707
+ "userId": 6,
708
+ "id": 55,
709
+ "title": "sit vel voluptatem et non libero",
710
+ "body": "debitis excepturi ea perferendis harum libero optio\neos accusamus cum fuga ut sapiente repudiandae\net ut incidunt omnis molestiae\nnihil ut eum odit"
711
+ },
712
+ {
713
+ "userId": 6,
714
+ "id": 56,
715
+ "title": "qui et at rerum necessitatibus",
716
+ "body": "aut est omnis dolores\nneque rerum quod ea rerum velit pariatur beatae excepturi\net provident voluptas corrupti\ncorporis harum reprehenderit dolores eligendi"
717
+ },
718
+ {
719
+ "userId": 6,
720
+ "id": 57,
721
+ "title": "sed ab est est",
722
+ "body": "at pariatur consequuntur earum quidem\nquo est laudantium soluta voluptatem\nqui ullam et est\net cum voluptas voluptatum repellat est"
723
+ },
724
+ {
725
+ "userId": 6,
726
+ "id": 58,
727
+ "title": "voluptatum itaque dolores nisi et quasi",
728
+ "body": "veniam voluptatum quae adipisci id\net id quia eos ad et dolorem\naliquam quo nisi sunt eos impedit error\nad similique veniam"
729
+ },
730
+ {
731
+ "userId": 6,
732
+ "id": 59,
733
+ "title": "qui commodi dolor at maiores et quis id accusantium",
734
+ "body": "perspiciatis et quam ea autem temporibus non voluptatibus qui\nbeatae a earum officia nesciunt dolores suscipit voluptas et\nanimi doloribus cum rerum quas et magni\net hic ut ut commodi expedita sunt"
735
+ },
736
+ {
737
+ "userId": 6,
738
+ "id": 60,
739
+ "title": "consequatur placeat omnis quisquam quia reprehenderit fugit veritatis facere",
740
+ "body": "asperiores sunt ab assumenda cumque modi velit\nqui esse omnis\nvoluptate et fuga perferendis voluptas\nillo ratione amet aut et omnis"
741
+ },
742
+ {
743
+ "userId": 7,
744
+ "id": 61,
745
+ "title": "voluptatem doloribus consectetur est ut ducimus",
746
+ "body": "ab nemo optio odio\ndelectus tenetur corporis similique nobis repellendus rerum omnis facilis\nvero blanditiis debitis in nesciunt doloribus dicta dolores\nmagnam minus velit"
747
+ },
748
+ {
749
+ "userId": 7,
750
+ "id": 62,
751
+ "title": "beatae enim quia vel",
752
+ "body": "enim aspernatur illo distinctio quae praesentium\nbeatae alias amet delectus qui voluptate distinctio\nodit sint accusantium autem omnis\nquo molestiae omnis ea eveniet optio"
753
+ },
754
+ {
755
+ "userId": 7,
756
+ "id": 63,
757
+ "title": "voluptas blanditiis repellendus animi ducimus error sapiente et suscipit",
758
+ "body": "enim adipisci aspernatur nemo\nnumquam omnis facere dolorem dolor ex quis temporibus incidunt\nab delectus culpa quo reprehenderit blanditiis asperiores\naccusantium ut quam in voluptatibus voluptas ipsam dicta"
759
+ },
760
+ {
761
+ "userId": 7,
762
+ "id": 64,
763
+ "title": "et fugit quas eum in in aperiam quod",
764
+ "body": "id velit blanditiis\neum ea voluptatem\nmolestiae sint occaecati est eos perspiciatis\nincidunt a error provident eaque aut aut qui"
765
+ },
766
+ {
767
+ "userId": 7,
768
+ "id": 65,
769
+ "title": "consequatur id enim sunt et et",
770
+ "body": "voluptatibus ex esse\nsint explicabo est aliquid cumque adipisci fuga repellat labore\nmolestiae corrupti ex saepe at asperiores et perferendis\nnatus id esse incidunt pariatur"
771
+ },
772
+ {
773
+ "userId": 7,
774
+ "id": 66,
775
+ "title": "repudiandae ea animi iusto",
776
+ "body": "officia veritatis tenetur vero qui itaque\nsint non ratione\nsed et ut asperiores iusto eos molestiae nostrum\nveritatis quibusdam et nemo iusto saepe"
777
+ },
778
+ {
779
+ "userId": 7,
780
+ "id": 67,
781
+ "title": "aliquid eos sed fuga est maxime repellendus",
782
+ "body": "reprehenderit id nostrum\nvoluptas doloremque pariatur sint et accusantium quia quod aspernatur\net fugiat amet\nnon sapiente et consequatur necessitatibus molestiae"
783
+ },
784
+ {
785
+ "userId": 7,
786
+ "id": 68,
787
+ "title": "odio quis facere architecto reiciendis optio",
788
+ "body": "magnam molestiae perferendis quisquam\nqui cum reiciendis\nquaerat animi amet hic inventore\nea quia deleniti quidem saepe porro velit"
789
+ },
790
+ {
791
+ "userId": 7,
792
+ "id": 69,
793
+ "title": "fugiat quod pariatur odit minima",
794
+ "body": "officiis error culpa consequatur modi asperiores et\ndolorum assumenda voluptas et vel qui aut vel rerum\nvoluptatum quisquam perspiciatis quia rerum consequatur totam quas\nsequi commodi repudiandae asperiores et saepe a"
795
+ },
796
+ {
797
+ "userId": 7,
798
+ "id": 70,
799
+ "title": "voluptatem laborum magni",
800
+ "body": "sunt repellendus quae\nest asperiores aut deleniti esse accusamus repellendus quia aut\nquia dolorem unde\neum tempora esse dolore"
801
+ },
802
+ {
803
+ "userId": 8,
804
+ "id": 71,
805
+ "title": "et iusto veniam et illum aut fuga",
806
+ "body": "occaecati a doloribus\niste saepe consectetur placeat eum voluptate dolorem et\nqui quo quia voluptas\nrerum ut id enim velit est perferendis"
807
+ },
808
+ {
809
+ "userId": 8,
810
+ "id": 72,
811
+ "title": "sint hic doloribus consequatur eos non id",
812
+ "body": "quam occaecati qui deleniti consectetur\nconsequatur aut facere quas exercitationem aliquam hic voluptas\nneque id sunt ut aut accusamus\nsunt consectetur expedita inventore velit"
813
+ },
814
+ {
815
+ "userId": 8,
816
+ "id": 73,
817
+ "title": "consequuntur deleniti eos quia temporibus ab aliquid at",
818
+ "body": "voluptatem cumque tenetur consequatur expedita ipsum nemo quia explicabo\naut eum minima consequatur\ntempore cumque quae est et\net in consequuntur voluptatem voluptates aut"
819
+ },
820
+ {
821
+ "userId": 8,
822
+ "id": 74,
823
+ "title": "enim unde ratione doloribus quas enim ut sit sapiente",
824
+ "body": "odit qui et et necessitatibus sint veniam\nmollitia amet doloremque molestiae commodi similique magnam et quam\nblanditiis est itaque\nquo et tenetur ratione occaecati molestiae tempora"
825
+ },
826
+ {
827
+ "userId": 8,
828
+ "id": 75,
829
+ "title": "dignissimos eum dolor ut enim et delectus in",
830
+ "body": "commodi non non omnis et voluptas sit\nautem aut nobis magnam et sapiente voluptatem\net laborum repellat qui delectus facilis temporibus\nrerum amet et nemo voluptate expedita adipisci error dolorem"
831
+ },
832
+ {
833
+ "userId": 8,
834
+ "id": 76,
835
+ "title": "doloremque officiis ad et non perferendis",
836
+ "body": "ut animi facere\ntotam iusto tempore\nmolestiae eum aut et dolorem aperiam\nquaerat recusandae totam odio"
837
+ },
838
+ {
839
+ "userId": 8,
840
+ "id": 77,
841
+ "title": "necessitatibus quasi exercitationem odio",
842
+ "body": "modi ut in nulla repudiandae dolorum nostrum eos\naut consequatur omnis\nut incidunt est omnis iste et quam\nvoluptates sapiente aliquam asperiores nobis amet corrupti repudiandae provident"
843
+ },
844
+ {
845
+ "userId": 8,
846
+ "id": 78,
847
+ "title": "quam voluptatibus rerum veritatis",
848
+ "body": "nobis facilis odit tempore cupiditate quia\nassumenda doloribus rerum qui ea\nillum et qui totam\naut veniam repellendus"
849
+ },
850
+ {
851
+ "userId": 8,
852
+ "id": 79,
853
+ "title": "pariatur consequatur quia magnam autem omnis non amet",
854
+ "body": "libero accusantium et et facere incidunt sit dolorem\nnon excepturi qui quia sed laudantium\nquisquam molestiae ducimus est\nofficiis esse molestiae iste et quos"
855
+ },
856
+ {
857
+ "userId": 8,
858
+ "id": 80,
859
+ "title": "labore in ex et explicabo corporis aut quas",
860
+ "body": "ex quod dolorem ea eum iure qui provident amet\nquia qui facere excepturi et repudiandae\nasperiores molestias provident\nminus incidunt vero fugit rerum sint sunt excepturi provident"
861
+ },
862
+ {
863
+ "userId": 9,
864
+ "id": 81,
865
+ "title": "tempora rem veritatis voluptas quo dolores vero",
866
+ "body": "facere qui nesciunt est voluptatum voluptatem nisi\nsequi eligendi necessitatibus ea at rerum itaque\nharum non ratione velit laboriosam quis consequuntur\nex officiis minima doloremque voluptas ut aut"
867
+ },
868
+ {
869
+ "userId": 9,
870
+ "id": 82,
871
+ "title": "laudantium voluptate suscipit sunt enim enim",
872
+ "body": "ut libero sit aut totam inventore sunt\nporro sint qui sunt molestiae\nconsequatur cupiditate qui iste ducimus adipisci\ndolor enim assumenda soluta laboriosam amet iste delectus hic"
873
+ },
874
+ {
875
+ "userId": 9,
876
+ "id": 83,
877
+ "title": "odit et voluptates doloribus alias odio et",
878
+ "body": "est molestiae facilis quis tempora numquam nihil qui\nvoluptate sapiente consequatur est qui\nnecessitatibus autem aut ipsa aperiam modi dolore numquam\nreprehenderit eius rem quibusdam"
879
+ },
880
+ {
881
+ "userId": 9,
882
+ "id": 84,
883
+ "title": "optio ipsam molestias necessitatibus occaecati facilis veritatis dolores aut",
884
+ "body": "sint molestiae magni a et quos\neaque et quasi\nut rerum debitis similique veniam\nrecusandae dignissimos dolor incidunt consequatur odio"
885
+ },
886
+ {
887
+ "userId": 9,
888
+ "id": 85,
889
+ "title": "dolore veritatis porro provident adipisci blanditiis et sunt",
890
+ "body": "similique sed nisi voluptas iusto omnis\nmollitia et quo\nassumenda suscipit officia magnam sint sed tempora\nenim provident pariatur praesentium atque animi amet ratione"
891
+ },
892
+ {
893
+ "userId": 9,
894
+ "id": 86,
895
+ "title": "placeat quia et porro iste",
896
+ "body": "quasi excepturi consequatur iste autem temporibus sed molestiae beatae\net quaerat et esse ut\nvoluptatem occaecati et vel explicabo autem\nasperiores pariatur deserunt optio"
897
+ },
898
+ {
899
+ "userId": 9,
900
+ "id": 87,
901
+ "title": "nostrum quis quasi placeat",
902
+ "body": "eos et molestiae\nnesciunt ut a\ndolores perspiciatis repellendus repellat aliquid\nmagnam sint rem ipsum est"
903
+ },
904
+ {
905
+ "userId": 9,
906
+ "id": 88,
907
+ "title": "sapiente omnis fugit eos",
908
+ "body": "consequatur omnis est praesentium\nducimus non iste\nneque hic deserunt\nvoluptatibus veniam cum et rerum sed"
909
+ },
910
+ {
911
+ "userId": 9,
912
+ "id": 89,
913
+ "title": "sint soluta et vel magnam aut ut sed qui",
914
+ "body": "repellat aut aperiam totam temporibus autem et\narchitecto magnam ut\nconsequatur qui cupiditate rerum quia soluta dignissimos nihil iure\ntempore quas est"
915
+ },
916
+ {
917
+ "userId": 9,
918
+ "id": 90,
919
+ "title": "ad iusto omnis odit dolor voluptatibus",
920
+ "body": "minus omnis soluta quia\nqui sed adipisci voluptates illum ipsam voluptatem\neligendi officia ut in\neos soluta similique molestias praesentium blanditiis"
921
+ },
922
+ {
923
+ "userId": 10,
924
+ "id": 91,
925
+ "title": "aut amet sed",
926
+ "body": "libero voluptate eveniet aperiam sed\nsunt placeat suscipit molestias\nsimilique fugit nam natus\nexpedita consequatur consequatur dolores quia eos et placeat"
927
+ },
928
+ {
929
+ "userId": 10,
930
+ "id": 92,
931
+ "title": "ratione ex tenetur perferendis",
932
+ "body": "aut et excepturi dicta laudantium sint rerum nihil\nlaudantium et at\na neque minima officia et similique libero et\ncommodi voluptate qui"
933
+ },
934
+ {
935
+ "userId": 10,
936
+ "id": 93,
937
+ "title": "beatae soluta recusandae",
938
+ "body": "dolorem quibusdam ducimus consequuntur dicta aut quo laboriosam\nvoluptatem quis enim recusandae ut sed sunt\nnostrum est odit totam\nsit error sed sunt eveniet provident qui nulla"
939
+ },
940
+ {
941
+ "userId": 10,
942
+ "id": 94,
943
+ "title": "qui qui voluptates illo iste minima",
944
+ "body": "aspernatur expedita soluta quo ab ut similique\nexpedita dolores amet\nsed temporibus distinctio magnam saepe deleniti\nomnis facilis nam ipsum natus sint similique omnis"
945
+ },
946
+ {
947
+ "userId": 10,
948
+ "id": 95,
949
+ "title": "id minus libero illum nam ad officiis",
950
+ "body": "earum voluptatem facere provident blanditiis velit laboriosam\npariatur accusamus odio saepe\ncumque dolor qui a dicta ab doloribus consequatur omnis\ncorporis cupiditate eaque assumenda ad nesciunt"
951
+ },
952
+ {
953
+ "userId": 10,
954
+ "id": 96,
955
+ "title": "quaerat velit veniam amet cupiditate aut numquam ut sequi",
956
+ "body": "in non odio excepturi sint eum\nlabore voluptates vitae quia qui et\ninventore itaque rerum\nveniam non exercitationem delectus aut"
957
+ },
958
+ {
959
+ "userId": 10,
960
+ "id": 97,
961
+ "title": "quas fugiat ut perspiciatis vero provident",
962
+ "body": "eum non blanditiis soluta porro quibusdam voluptas\nvel voluptatem qui placeat dolores qui velit aut\nvel inventore aut cumque culpa explicabo aliquid at\nperspiciatis est et voluptatem dignissimos dolor itaque sit nam"
963
+ },
964
+ {
965
+ "userId": 10,
966
+ "id": 98,
967
+ "title": "laboriosam dolor voluptates",
968
+ "body": "doloremque ex facilis sit sint culpa\nsoluta assumenda eligendi non ut eius\nsequi ducimus vel quasi\nveritatis est dolores"
969
+ },
970
+ {
971
+ "userId": 10,
972
+ "id": 99,
973
+ "title": "temporibus sit alias delectus eligendi possimus magni",
974
+ "body": "quo deleniti praesentium dicta non quod\naut est molestias\nmolestias et officia quis nihil\nitaque dolorem quia"
975
+ },
976
+ {
977
+ "userId": 10,
978
+ "id": 100,
979
+ "title": "at nam consequatur ea labore ea harum",
980
+ "body": "cupiditate quo est a modi nesciunt soluta\nipsa voluptas error itaque dicta in\nautem qui minus magnam et distinctio eum\naccusamus ratione error aut"
981
+ }
982
+ ]
983
+ http_version:
984
+ recorded_at: Tue, 06 Mar 2018 10:13:06 GMT
985
+ - request:
986
+ method: get
987
+ uri: https://jsonplaceholder.typicode.com/users1/posts
988
+ body:
989
+ encoding: UTF-8
990
+ string: ''
991
+ headers:
992
+ Accept:
993
+ - application/json
994
+ Content-Type:
995
+ - application/json
996
+ Connection:
997
+ - close
998
+ Host:
999
+ - jsonplaceholder.typicode.com
1000
+ User-Agent:
1001
+ - http.rb/3.0.0
1002
+ response:
1003
+ status:
1004
+ code: 404
1005
+ message: Not Found
1006
+ headers:
1007
+ Date:
1008
+ - Tue, 06 Mar 2018 10:22:21 GMT
1009
+ Content-Type:
1010
+ - application/json; charset=utf-8
1011
+ Content-Length:
1012
+ - '2'
1013
+ Connection:
1014
+ - close
1015
+ Set-Cookie:
1016
+ - __cfduid=df1183ac35b6ebeacda5028eafc4e0f7c1520331741; expires=Wed, 06-Mar-19
1017
+ 10:22:21 GMT; path=/; domain=.typicode.com; HttpOnly
1018
+ X-Powered-By:
1019
+ - Express
1020
+ Vary:
1021
+ - Origin, Accept-Encoding
1022
+ Access-Control-Allow-Credentials:
1023
+ - 'true'
1024
+ Cache-Control:
1025
+ - public, max-age=14400
1026
+ Pragma:
1027
+ - no-cache
1028
+ Expires:
1029
+ - Tue, 06 Mar 2018 14:22:21 GMT
1030
+ X-Content-Type-Options:
1031
+ - nosniff
1032
+ Etag:
1033
+ - W/"2-vyGp6PvFo4RvsFtPoIWeCReyIC8"
1034
+ Via:
1035
+ - 1.1 vegur
1036
+ Cf-Cache-Status:
1037
+ - MISS
1038
+ Expect-Ct:
1039
+ - max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
1040
+ Server:
1041
+ - cloudflare
1042
+ Cf-Ray:
1043
+ - 3f7419c7af2a8dd1-DME
1044
+ body:
1045
+ encoding: UTF-8
1046
+ string: "{}"
1047
+ http_version:
1048
+ recorded_at: Tue, 06 Mar 2018 10:29:18 GMT
1049
+ recorded_with: VCR 3.0.3