2009-08-07 11 views
0

J'utilise un objet XMLHTTPRequest dans mon projet C++. J'ai des choses qui fonctionnent bien avec les requêtes http normales et les requêtes https sur les serveurs avec des certificats valides. Lorsque j'essaie de faire une demande https: // à un serveur dont le certificat produirait un IE "Il y a un problème avec le certificat de sécurité de ce site web." erreur si j'ai essayé de naviguer là-bas avec IE, la demande échoue.XMLHttpRequest et erreurs de certificat

Le résultat obtenu à partir de la demande est une erreur 12019. Est-il possible de faire en sorte que la demande ignore l'erreur et continue comme si un utilisateur avait cliqué sur le lien "continuer vers ce site Web".

Vous allez suggérer que je corrige ce qui ne va pas avec le certificat. Pour l'instant je n'ai pas le contrôle de ce certificat, donc je cherche une réponse (s'il y en a une) qui n'inclut pas la correction du certificat.

Merci.

+0

L'objet ServerXMLHTTP a une fonction setOption (SXH_OPTION_SELECT_CLIENT_SSL_CERT, 13056) que je vois me permet d'ignorer avec succès l'erreur. Malheureusement, la nature spécifique du serveur de cet objet semble tuer la fonctionnalité dont j'ai besoin de XMLHttpRequest. Impossible de récupérer les cookies créés par un précédent ServerXMLHTTP. C'est essentiel à ce que je dois faire. –

Répondre

0

juste avoir un bug avec l'état de réponse ajax = 12019 si IE6 et j'ai trouvé que l'URL de la demande contient double barre oblique! http://site//get/param1/param2 [censuré] ...... :)

donc si quelqu'un a encore même problème - essayez URL ti vérification de demande de doubles barres obliques

12019 - il est très étrange ... mais très "par Microsoft"

1

Il existe un moyen, mais pas avec XMLHTTPRequest. Lorsque vous utilisez WinHTTP, vous pouvez utiliser:

DWORD dwOptions = 
    SECURITY_FLAG_IGNORE_CERT_CN_INVALID 
    | SECURITY_FLAG_IGNORE_CERT_DATE_INVALID 
    | SECURITY_FLAG_IGNORE_UNKNOWN_CA 
    | SECURITY_FLAG_IGNORE_CERT_WRONG_USAGE; 

bResults = WinHttpSetOption(hRequest, 
    WINHTTP_OPTION_SECURITY_FLAGS, 
    &dwOptions, 
    sizeof(dwOptions));