0

I've been trying to look more into this but I can't seem to find a good explanation of why this is happening.

So I am making a REST API call to a Sharepoint list. All I want is to grab information from the Sharepoint list through VBA. As far as I can tell, it's extracting data (from the correct view). However, if I make a small manual change to the Sharepoint list through a web browser on an item and then if I go back to run the code (REST call - snippet below) to see whether or not the update was picked up, I find that nothing has changed.

So my question is, if an application is making a REST call to a Sharepoint list using a GET request, what is the amount of time for Sharepoint servers to update new requests. I thought it would have been everytime a GET request would have been called that the newly updated item would show but this is not the case for me.

Just brainstorming other ideas, but, could it possible that within VBA, once a request has been run, is that query result stored in temp memory? If so, would I need to flush it out every time a new command is run?

Here's a snippet of my code (I want to stay anonymous as possible, so I'm showing dummy servers).

    Set req = CreateObject("MSXML2.XMLHTTP")
    params = "owssvr.dll?Cmd=Display&ID=&XMLDATA=true&List=%7B<LISTID>%7D&View=%7B<VIEWID>%7D"
    URL = "https://<SHAREPOINTSITE>/" & params
    req.Open "GET", URL, False
    req.Send

Any input is appreciated, thanks.

1

You're not using... REST: https://msdn.microsoft.com/en-us/library/office/ff521587%28v=office.14%29.aspx

You're using... RPC Protocol: https://msdn.microsoft.com/en-us/library/office/ms478653%28v=office.14%29.aspx

As such, you need to add &CacheControl=1 to your URL, to keep the data from being cached from the last call...

  • Thanks so much for the clarification! You are correct. And on further inspection of the cachecontrol command, every value that you assign stores the response cached to that value. So setting the parameter to 1 means that once the request has been sent, the response is saved to 1, therefore, if you want to constantly keep new updates, you need to change the value to something other than 1. – Chang Park Jul 31 '15 at 13:18

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.