TL;DR I think you’re using different ways to retrieve the URLs for the validator preview and for the final approval validation process, missing the _escaped_fragment_param in the last one.
Wow, it’s been a long time but I never was able to validate my URLs. I tried again today, looking to my web server log, and that is what I got:
When I put the URL i want to validate into the validator, the web tries to render the card and do it successfully, with these requests:
199.16.156.126 - - [16/Feb/2015:16:59:12 +0100] "GET /robots.txt HTTP/1.1" 200 101 "-" "Twitterbot/1.0"
199.16.156.126 - - [16/Feb/2015:16:59:13 +0100] "GET /something-like-fashion/?_escaped_fragment_=LR_130421_01 HTTP/1.1" 200 544 "-" "Twitterbot/1.0"
199.16.156.124 - - [16/Feb/2015:16:59:29 +0100] "GET /robots.txt HTTP/1.1" 200 101 "-" "Twitterbot/1.0"
199.16.156.124 - - [16/Feb/2015:16:59:30 +0100] "GET /something-like-fashion/?_escaped_fragment_=LR_130421_01 HTTP/1.1" 200 544 "-" "Twitterbot/1.0"
199.16.156.124 - - [16/Feb/2015:16:59:32 +0100] "GET /robots.txt HTTP/1.1" 200 101 "-" "Twitterbot/1.0"
199.16.156.124 - - [16/Feb/2015:16:59:33 +0100] "GET /something-like-fashion/?_escaped_fragment_=LR_130421_01 HTTP/1.1" 200 544 "-" "Twitterbot/1.0"
199.16.156.125 - - [16/Feb/2015:16:59:34 +0100] "GET /robots.txt HTTP/1.1" 200 101 "-" "Twitterbot/1.0"
199.16.156.125 - - [16/Feb/2015:16:59:35 +0100] "GET /something-like-fashion/?_escaped_fragment_=LR_130421_01 HTTP/1.1" 200 544 "-" "Twitterbot/1.0"
But when I request the approval, requests are different, missing the _escaped_fragment_ parameter, going to a non relevant and non card ready page:
199.16.156.124 - - [16/Feb/2015:17:00:37 +0100] "GET /robots.txt HTTP/1.1" 200 101 "-" "Twitterbot/1.0"
199.59.148.209 - - [16/Feb/2015:17:00:37 +0100] "GET /robots.txt HTTP/1.1" 200 101 "-" "Twitterbot/1.0"
199.16.156.124 - - [16/Feb/2015:17:00:39 +0100] "GET /something-like-fashion HTTP/1.1" 200 4745 "-" "Twitterbot/1.0"
199.59.148.209 - - [16/Feb/2015:17:00:39 +0100] "GET /something-like-fashion HTTP/1.1" 200 4745 "-" "Twitterbot/1.0"
I think you’re using different ways to retrieve the URLs for the validator preview and for the final approval validation process.