| Time |
S |
Nick |
Message |
| 00:01 |
|
|
adaro joined #rest |
| 00:28 |
|
|
adaro joined #rest |
| 00:47 |
|
|
wsiqueir joined #rest |
| 02:47 |
|
|
irctc174 joined #rest |
| 02:48 |
|
irctc174 |
hello anyone here? |
| 02:59 |
|
|
fuzzyhorns joined #rest |
| 04:43 |
|
|
fuzzyhorns joined #rest |
| 06:45 |
|
|
adaro joined #rest |
| 07:04 |
|
|
lemur joined #rest |
| 07:36 |
|
|
Left_Turn joined #rest |
| 07:51 |
|
|
lemur joined #rest |
| 08:05 |
|
|
quimrstorres joined #rest |
| 08:18 |
|
|
quimrstorres joined #rest |
| 08:27 |
|
|
quimrstorres joined #rest |
| 08:35 |
|
|
quimrstorres joined #rest |
| 08:40 |
|
|
quimrstorres joined #rest |
| 08:44 |
|
|
quimrstorres joined #rest |
| 08:51 |
|
|
quimrstorres joined #rest |
| 08:53 |
|
|
lemur joined #rest |
| 08:55 |
|
|
quimrstorres joined #rest |
| 09:03 |
|
|
quimrstorres joined #rest |
| 09:08 |
|
|
quimrstorres joined #rest |
| 10:33 |
|
|
edos joined #rest |
| 10:36 |
|
|
_ollie joined #rest |
| 10:40 |
|
|
quimrstorres joined #rest |
| 10:51 |
|
|
vanHoesel joined #rest |
| 12:32 |
|
|
quimrstorres joined #rest |
| 14:36 |
|
|
Left_Turn joined #rest |
| 15:23 |
|
|
Coldblackice joined #rest |
| 15:34 |
|
|
fuzzyhorns joined #rest |
| 15:35 |
|
|
_ollie joined #rest |
| 15:44 |
|
|
upasana- joined #rest |
| 16:56 |
|
|
wsiqueir joined #rest |
| 17:17 |
|
|
fuzzyhorns joined #rest |
| 18:49 |
|
|
vanHoesel joined #rest |
| 18:57 |
|
|
philbot joined #rest |
| 18:57 |
|
|
Topic for #rest is now #rest REpresentational State Transfer | logs: http://irclog.greptilian.com/rest/today | http://tech.groups.yahoo.com/group/rest-discuss | http://code.google.com/p/implementing-rest/ | http://en.wikipedia.org/wiki/Representational_State_Transfer |
| 19:11 |
|
|
zama joined #rest |
| 19:11 |
|
|
asdf` joined #rest |
| 19:11 |
|
|
Guest9206 joined #rest |
| 19:12 |
|
|
mgomezch joined #rest |
| 19:27 |
|
|
edos joined #rest |
| 20:17 |
|
|
lemur joined #rest |
| 20:23 |
|
|
foist joined #rest |
| 20:24 |
|
foist |
I keep seeing this `/me` endpoint in more and more APIs. Is this not a violation of REST? |
| 20:25 |
|
foist |
For example: https://developer.spotify.com/web-api/endpoint-reference/ (/v1/me Get current user's profile, /v1/me/following Get Followed Artists) |
| 20:27 |
|
pdurbin |
foist: why would it be? |
| 20:27 |
|
foist |
It’s not stateless. |
| 20:28 |
|
foist |
Requires information about the current state of the session — the user. |
| 20:28 |
|
foist |
pdurbin: ^ |
| 20:28 |
|
* foist |
is not a resource |
| 20:28 |
|
foist |
lol */me is not a resource |
| 20:29 |
|
|
quimrstorres joined #rest |
| 20:29 |
|
pdurbin |
https://developer.spotify.com/web-api/get-followed-artists/ requires an access token. seems fine |
| 20:30 |
|
foist |
pdurbin: What about requiring an access token makes it okay? |
| 20:31 |
|
trygvis |
../me endpoints are useful for checking your communication level and authentication setup |
| 20:31 |
|
trygvis |
foist: what makes it not ok? |
| 20:31 |
|
foist |
Just what I said before. It’s not a stateless request. |
| 20:31 |
|
trygvis |
there is no state, you can do that call at any time |
| 20:32 |
|
|
vanHoesel joined #rest |
| 20:32 |
|
foist |
`/me/following` requires state. |
| 20:33 |
|
trygvis |
that is a different resource |
| 20:33 |
|
trygvis |
but it's not necessarily a violation, but it is not good for caching |
| 20:34 |
|
trygvis |
the important part is that it is discovered by the client |
| 20:34 |
|
foist |
Could you describe the impact on caching, as well as why it isn’t a violation, seeing as it requires state? |
| 20:34 |
|
trygvis |
you're the one saying it requires state |
| 20:35 |
|
trygvis |
but caching will suffer as many clients will access the same resource which requires the endpoint to set cache headers that disables caching |
| 20:35 |
|
|
vanHoesel joined #rest |
| 20:35 |
|
trygvis |
if it was /<user id>/followers the resource could have been cached |
| 20:38 |
|
foist |
trygvis: so basically each time that a new user requests `me/following` the cache is replaced with that particular user’s collection of artists they’re following? |
| 20:40 |
|
trygvis |
no, it can't be cached at all |
| 20:41 |
|
trygvis |
as in the server will say "no intermediate or client can cache this" |
| 20:42 |
|
foist |
I see. Why do you say that it _doesn’t_ require state? `me` can only be defined given a particular state, no? |
| 20:43 |
|
|
fuzzyhorns joined #rest |
| 20:51 |
|
trygvis |
no, I can access /me whenever I want to. there is no restrition on when I can call it |
| 20:52 |
|
trygvis |
I don't have to access /foo, then /bar and wait until it the wind comes from the south before I can call /me |
| 20:53 |
|
foist |
trygvis: in this case `/me` is used to "Get current user's profile”. Given your foo/bar example, to use `/me` you do have to first retrieve your access token by authenticating. That is a valid analog to the wind blowing from the south, isn’t it? |
| 20:55 |
|
trygvis |
there is no access token, there is only www-authentiate and you will provide the token when requested to do so (on a 403 respose) |
| 20:55 |
|
trygvis |
the 403 can instruct you to do some other operations, but that is not relevant for the /me resource |
| 20:56 |
|
foist |
There is an access token required to access the resource https://developer.spotify.com/web-api/get-followed-artists/ |
| 20:56 |
|
foist |
the `Authorization` header field. |
| 20:59 |
|
trygvis |
yes, sorry. the server sends www-authenticate with the possible mechanisms, and the client uses Authentication for the next request |
| 21:26 |
|
|
fuzzyhorns joined #rest |
| 21:28 |
|
|
DebolazX joined #rest |
| 21:29 |
|
|
quimrstorres joined #rest |
| 21:37 |
|
foist |
trygvis: thank you. |
| 21:48 |
|
|
quimrstorres joined #rest |
| 21:48 |
|
|
fuzzyhorns joined #rest |
| 22:10 |
|
|
quimrstorres joined #rest |
| 22:22 |
|
|
adaro joined #rest |
| 22:48 |
|
|
prologic joined #rest |
| 23:50 |
|
|
fuzzyhorns joined #rest |