FAQ
I fail to see where I said the GET requests are "creating"/"adding"
anything, so I apologize if my explanation caused such a confussion.

The GET requests are merely fetching data. Data which is very likely to
change more than once an hour, which is why caching isn't an option.

I've solved the performance issues by pooling the database connections
instead, and it's working fine now. Although there's still a lot of
unneccessary resources being used in relation to the database when spamming
requests like this. That's why I want a decent way to prevent spamming Get
requests from the same client, same time, same view.

Den fredagen den 28:e november 2014 kl. 19:47:53 UTC+1 skrev Micheil Smith:
Why can’t your GET request be called multiple times? If it changes data,
then you
should make it a POST/PUT/PATCH request;

Then with the POST/PUT/PATCH request, you could have an authenticity token
that you verify is correct before processing any requests. (Which is sort
of what
Aria is suggesting).

If the route doesn’t change or create data, and simply reads it, then you
could set
up caching for your API Requests.


However, given your message on 13th November at 7:38 pm UTC, I’d be
inclined
to say that your misusing GET requests if your “creating” things.

— Micheil

On 13 Nov 2014, at 5:59 pm, Alex Spencer <alex...@gmail.com <javascript:>>
wrote:
Hi.

Imagine a simple route like this:

app.get('/test',
apiCall1(),
apiCall2(),
apiCall3(),
apiCall4(),
apiCall5(),
renderPage()

How would you prevent this code from being executed by the same client
while said client is spamming GET requests (either by refresh page or
clicking buttons, etc.) to the same route ?
I'm using express (+session, static, bodyparser) and have failed to
figure this out on my own.
For example when I first visit /test in the browser, it works fine. But
if I then quickly refresh the page twice in a row, I get to the route twice
for the same session, which in turn doubles the amount of API calls from 5
to 10.
I want it to only occur once, and render the page. I've tried session
variables like "isRequesting true/false" and such, but nothing works,
because the response object changes upon a new request, meaning renderPage
cant use res.send on the "latest" response object.

Cheers.

--
Job board: http://jobs.nodejs.org/
New group rules:
https://gist.github.com/othiym23/9886289#file-moderation-policy-md
Old group rules:
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
---
You received this message because you are subscribed to the Google
Groups "nodejs" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to nodejs+un...@googlegroups.com <javascript:>.
To post to this group, send email to nod...@googlegroups.com
<javascript:>.
To view this discussion on the web visit
https://groups.google.com/d/msgid/nodejs/cf81af35-399e-4842-8d9d-d8095d54f3bc%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
--
Job board: http://jobs.nodejs.org/
New group rules: https://gist.github.com/othiym23/9886289#file-moderation-policy-md
Old group rules: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
---
You received this message because you are subscribed to the Google Groups "nodejs" group.
To unsubscribe from this group and stop receiving emails from it, send an email to nodejs+unsubscribe@googlegroups.com.
To post to this group, send email to nodejs@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/nodejs/d96d40e0-f164-405c-a224-8d1d1d99b32d%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Search Discussions

Discussion Posts

Previous

Follow ups

Related Discussions

Discussion Navigation
viewthread | post
posts ‹ prev | 7 of 8 | next ›
Discussion Overview
groupnodejs @
categoriesnodejs
postedNov 13, '14 at 7:10p
activeDec 1, '14 at 3:11p
posts8
users5
websitenodejs.org
irc#node.js

People

Translate

site design / logo © 2022 Grokbase