There are thousands if not millions of dysfunctional websites right now that currently return an error saying “The request must contain the parameter Signature.”
The reason for this is that Amazon Web Services, who provide the Amazon data used on websites, currently changed their requirements for Amazon Web Services requests by now requiring a signature value.
If you’re like me, you feel that quality documentation on Amazon Web Services is about as difficult to find as the proverbial needle in a haystack.
Fortunately, there is a lively community out there who is scrambling to solve this problem. Using much of the information I gathered from the Amazon Web Services Developer’s Forumn, I have put together a quick solution to the “The request must contain the parameter Signature.”
First, let me tell you how I use the Amazon Web Services so that you can determine if this solution will work for you.
All of my requests to Amazon Web Services are REST requests. They generally look something like this:
I needed a solution to fix all of my “signature parameter missing” errors that would be relatively quick and painless. Well, after reviewing the form and this AWS documentation page, I thought a quick and painless solution might be a dream.
However, I came up with a solution that allowed me to simply rewrite all of my REST requests to the new, proper form. This solution worked with all of my REST requests. (The only modification that I needed was to change the keywords in the keyword parameter to eliminate spaces; to do this, I changed all spaces in the source request to %20 and it worked fine.)
Doing this, I was able to change all of my REST requests fairly quickly and painlessly. This solution fixes your one-time REST requests (due to the new “timestamp” parameter, it will only work for a small timeframe). I use this solution for one-time requests and also to test whether REST requests are properly configured. For a solution for REST requests within PHP files, please see The Request Must Contain The Parameter Signature: Quick Fix for Your PHP Rest Requests.
You can find the solution on my page entitled AWS Signature Parameter Convert.
On this page, you simply put in your Amazon Code and your originating URL and the program will spit out your new AWS Signature Parameter URL.
Thanks to all those on the Amazon Web Services Forumn who contributed such valuable information.
Hope this helps you all out there,