jQuery AJAX Croix de Domaine avec l'Authentification de BASE
Je suis d'essayer de faire usage de la Beanstalk (beanstalkapp.com l'API par l'extraction de données dans une page web afin que les gens peuvent regarder sans accès à mon SVN.
Ce que je suis en train de faire et l'accès à l'aide d'une requête AJAX via jQuery. Le code est ci-dessous, mais j'obtiens une erreur à chaque fois, et ne peut pas renvoyer les données.
<script type="text/javascript">
$(document).ready(function() {
var tok = 'username' + ':' + 'password123';
hash = btoa(tok);
authInfo = "Basic " + hash;
$.ajax({
url: "http://username.beanstalkapp.com/api/changesets.json",
beforeSend: function (xhr) { xhr.setRequestHeader ("Authorization", authInfo); },
type: "GET",
async: false,
crossDomain: true,
dataType: "json",
success: function(html){
console.log(html);
},
error: function(html){
console.log('error');
}
});
});
</script>
Si je accéder à l'URL directement par le biais de mon navigateur (http://username.beanstalkapp.com/api/changesets.json) il fonctionne très bien et renvoie le json. Cependant, je ne peux pas obtenir de l'AJAX pour le retour. Toute aide est appréciée. Merci!
Assurez-vous que le serveur/page (ou autre) permet de demander via Ajax.
comment avez-u définir un nom d'utilisateur et mot de passe lorsque u appel à l'aide d'une requête ajax
Bishnu - Aurait-il un autre moyen d'obtenir les données à distance?
muthu - C'est dans le script ci-dessus. C'est la var 'tok'.
J'ai fini par écrire un script cURL pour ce faire. Le serveur ne doit pas, comme d'être sondée par AJAX. Si quelqu'un souhaite le voir, laissez-moi savoir et je vais modifier la question.
comment avez-u définir un nom d'utilisateur et mot de passe lorsque u appel à l'aide d'une requête ajax
Bishnu - Aurait-il un autre moyen d'obtenir les données à distance?
muthu - C'est dans le script ci-dessus. C'est la var 'tok'.
J'ai fini par écrire un script cURL pour ce faire. Le serveur ne doit pas, comme d'être sondée par AJAX. Si quelqu'un souhaite le voir, laissez-moi savoir et je vais modifier la question.
OriginalL'auteur xxdrivenxx | 2012-08-14
Vous devez vous connecter pour publier un commentaire.
Vous aurez besoin de faire des proxy pour la croix-domaine de requêtes ajax.
Scénario ressemble à ceci:
Si vous utilisez php, vous pouvez envoyer une demande avec curl, et il est assez facile à mettre en œuvre. J'ai écrit l'article sur ce sujet récemment http://www.svlada.com/proxy-ajax-requests-curl-and-symfony-2/.
OriginalL'auteur svlada
vous ne pouvez pas obtenir un json à partir d'un autre domaine que le vôtre. c'est un problème de sécurité a appelé même la politique de l'origine pour obtenir plus de l'utiliser JSONP pas de JSON.
OriginalL'auteur zizoujab
Cochez cette jsfiddle. Le nom d'utilisateur et le mot de passe est incorrect. Donner le nom d'utilisateur correct et le mot de passe et vérifier encore une fois.
Je suis d'erreur comme cela aaronh.beanstalkapp.com/api/... 401 (non autorisé)
OriginalL'auteur muthu