jomo
15a4f17560
add rate limit option for sessionserver
...
any outgoing requests to the sessionserver
that would exceed the configured rate limit are skipped
to prevent being blocked by CloudFront
if a texture hash is cached but outdated, the cache ttl will be bumped
as if the request succeeded, in order to lower requests in the near future
2020-03-29 07:43:23 +02:00
jomo
c975cc793b
remove cleaner.js
2020-03-24 18:49:42 +01:00
jomo
168457dfd9
update to node 12
2020-03-21 01:50:50 +01:00
jomo
1816b18b12
update deps
2018-02-16 18:45:56 +01:00
jomo
dff58c66e7
drop support for usernames
...
Mojang has disabled their legacy skins API:
https://twitter.com/MojangSupport/status/964511258601865216
With their API rate limits, it's now practially impossible
for us to support usernames.
Fixes #142 . The default parameter allows using:
- UUID
- URL
- MHF_Alex
- MHF_Steve
- Alex
- Steve
Contrary to UUIDs, using alex/steve doesn't redirect
and instead provides the skin from a locally stored file.
2018-02-16 18:01:41 +01:00
jomo
a25e01922e
fix cape test
...
jeb_ no longer has a cape:
{
"id": "853c80ef3c3749fdaa49938b674adae6",
"name": "jeb_",
"properties": [
{
"name": "textures",
"value": "eyJ0aW1lc3RhbXAiOjE0OTk5MDMzNDY3NTQsInByb2ZpbGVJZCI6Ijg1M2M4MGVmM2MzNzQ5ZmRhYTQ5OTM4YjY3NGFkYWU2IiwicHJvZmlsZU5hbWUiOiJqZWJfIiwidGV4dHVyZXMiOnsiU0tJTiI6eyJ1cmwiOiJodHRwOi8vdGV4dHVyZXMubWluZWNyYWZ0Lm5ldC90ZXh0dXJlL2E4NDZiODI5NjM5MjRjYjEzMjExMTIyNDg5MjYzOTQxZDE0MDM2ODlmOTAxNTExMjBkNTIzNGJlNGE3M2ZiIn19fQ=="
}
]
}
{
"timestamp": 1499903346754,
"profileId": "853c80ef3c3749fdaa49938b674adae6",
"profileName": "jeb_",
"textures": {
"SKIN": {
"url": "http://textures.minecraft.net/texture/a846b82963924cb13211122489263941d1403689f90151120d5234be4a73fb "
}
}
}
2017-07-13 12:49:09 +02:00
jomo
c02d3d33e9
don't respond with 304 on error when debugging is enabled
2016-11-07 04:08:19 +01:00
jomo
6f1c414a4a
accept ESOCKETTIMEDOUT as possible timeout error
...
seems to be a race condition which one is thrown (?)
2016-11-04 16:48:13 +01:00
jomo
f7b8fd4e8c
fix rate-limiting tests
...
Mojang is now rate-limiting calls to their sessionserver case-insensitive.
This fix skips network-based tests for an upper-cased UUID which are previously
run with the same lower-cased UUID
2016-11-03 21:52:00 +01:00
jomo
f0b73b34d1
test code style: add trailing commas
2016-11-03 21:26:35 +01:00
jomo
1d9176711f
get rid of some test log spam
2016-11-03 21:25:13 +01:00
jomo
688a34029c
wait for redis connection before running tests
2016-11-03 21:19:28 +01:00
jomo
cbe2b25835
add test for empty username
2016-11-03 21:14:32 +01:00
jomo
6594200500
Mojang updated all capes, fix tests
2016-02-07 21:06:06 +01:00
jomo
183e8cfa9c
fix tests for f088c27012c0c49ad47538373d083311dccaf7d9
2016-02-03 03:00:03 +01:00
jomo
29fa734148
remove 'public' part from Cache-Control, not required
2016-01-23 06:26:41 +01:00
jomo
4f667cc99f
remove transparency from avatar, fixes #129
2016-01-20 23:44:33 +01:00
jomo
e7242ce773
respond 304 on server error, fixes #135
2016-01-20 01:50:30 +01:00
jomo
74ba828701
add test for uuid -> username skin type update
2016-01-20 01:17:36 +01:00
jomo
1144b6755a
always use crc32 for etag, much more reliable than mojang skin hash
...
had to make quite a few changes to tests to prevent them from failing
also, etag is now only sent with a 200 response, as defined in RFC7232
2015-12-16 00:47:51 +01:00
jomo
caeb9a52fe
verbose logging on travis
2015-12-15 21:09:13 +01:00
jomo
5cb20b1105
add more crc values to tests
2015-12-14 01:59:32 +01:00
jomo
7d02138c1e
solve merge conflicts
2015-12-14 01:51:49 +01:00
jomo
3c21a59c94
add support for slim renders, fixes #125 , adjust tests
2015-12-13 14:08:59 +01:00
jomo
fb0c70d648
return HTTPERROR on 429 or 5xx, fixes #151
...
otherwise 429 or 5xx would be overwriting cached value with null for $config minutes
2015-10-21 01:02:57 +02:00
jomo
d307aec221
rename helm to overlay, fixes #127
2015-10-18 15:11:17 +02:00
jomo
b0f50cbed0
print base64 encoded body if CRC does not match
2015-10-13 00:51:03 +02:00
jomo
8b2ccf3368
add new CRC checksums
...
updated OS X + cairo, so obviously the checksums change, right? right??
2015-10-13 00:50:25 +02:00
jomo
7714e0e0ef
add case sensitive default URL tests, so 06caf589abfc4f7a552714558ac5f78abddeeabb won't happen again
2015-09-30 21:06:16 +02:00
jomo
ecfec6a407
use MHF_Steve and MHF_Alex instead of steve and alex in default parameter
...
See #142 (not fixed by this commit!)
Basically, this just adds mhf_steve and mhf_alex as special cases for the default parameter only
2015-09-30 00:38:32 +02:00
jomo
c8d74d47be
avoid reserved property names (+ test), fixes #145
2015-09-25 19:24:56 +02:00
jomo
a15cb20144
TooManyRequestsException shouldn't actually throw an error
...
all other errors thrown here are network issues, this is not.
2015-09-20 21:43:12 +02:00
jomo
9cdca6acda
don't throw strings
2015-09-20 21:28:43 +02:00
jomo
6a630f23b9
add new test CRCs for @6d12ed6
2015-09-06 00:47:17 +02:00
jomo
3a61e15abf
various networking.js improvements
...
- cleaned up some messy if/else code, replaced with nicely readable switch/case
- catch JSON.parse errors
2015-08-31 00:10:35 +02:00
jomo
755cc74170
don't update file dates
...
this was originally implemented because we wanted to delete the oldest images on disk
where 'oldest' means not *used* for the longest time
that's not useful and was never actually implemented, so we don't need this
2015-08-30 04:48:50 +02:00
jomo
607dcaf6e5
use status -2 for 404s
...
human_status (response.js) defines code -2 as 'user error'. 404 is definitely a user error, so using that makes sense.
eventually we should change the whole status code thing with #120
2015-07-17 10:09:34 +02:00
Jake
b1cdf61e4b
Change invalid request path to be a 404 rather than 422, implement status id in response module
2015-07-16 17:48:48 -05:00
Jake
7e8c65fb33
Add tests for invalid URL paths, closes #123
2015-07-16 17:31:20 -05:00
jomo
72840433cb
use proper URL encoding in tests
2015-06-25 21:55:23 +02:00
jomo
d56b10955e
add tests for uuid defaults, #115
2015-06-25 21:46:14 +02:00
jomo
8c022e5cb6
'useranme'
2015-06-25 21:34:15 +02:00
jomo
f9b7ffb5b7
fix redirection test
2015-06-25 21:33:47 +02:00
jomo
34f94bf9b5
get rid of redundant config names #124
2015-06-25 21:19:50 +02:00
Jake
a2e0edc491
Namespace and move config to root directory, closes #124
2015-06-25 13:12:08 -05:00
Jake
d2ab7b87ad
Fix tests with new default code
2015-06-24 15:08:05 -05:00
Jake
8c39d0c017
Add support for userIds as defaults, ccloses #115
2015-06-24 01:23:22 -05:00
jomo
288657107e
actually store the skin in store_skin, fixes #108 ; pipe skins & capes through lwip before saving, fixes #121
2015-05-28 01:32:29 +02:00
jomo
679e72759a
fix test for TooManyRequests
2015-05-28 01:05:24 +02:00
jomo
0ec97e9ba1
add alternative checksum for mojang capes
2015-05-28 00:52:26 +02:00