Just thought I would share this in case anyone else is anal enough to worry about this scenario.
While developing my facebook app (IFrameCanvisPage), I have been adding and removing the app from my facebook profile to test the funtionalities. Everytime I would remove the app permissions and then try to go back to the app, I would get "Session key
invalid or no longer valid" and I could not re-approve the app. If made me wonder what would happen if a user removed my app (boooo), but then had a change of heart and went back to reinstall then got an error page. Small thing to worry about in the grand
scheme of things but it tripped me up for a couple days because I couldn't figure it out... the dumb little things that get under your skin sometimes.
Anyway, the only way I could get around this was to wait for the session to expire or to recompile my app. I searched all over for a solution, but since not very many people are as anal about little things like this as me, I couldn't find anything.
This morning, I think I have stumbled across an answer.
Any pages that reference the fdt api will need the following added to the page_onload... excuse my use of vb instead of C# folks.
If Request("fb_sig_session_key") = "" Then
Response.Redirect("default.aspx") <---- or whatever your canvis default page is
What this does is checks the session_key sent by facebook to see if it's empty which after the unistall, it is.
Clears out the Old Session in .Net
Then reloads the Canvis page, which now that the session is clear will redirect the user to the install page again.
I tried to do it without the response.redirect but it didn't hook into the fdt.
I suppose there are better ways to do this but this seems quick and easy.
Hope this helps someone else out there!