J'essaye d'implémenter un fournisseur d'OAuth dans Rails 3. Quand j'essaye d'autoriser une application de client j'obtiens cette erreur. J'utilise le plugin auth RESTful et pelles OAuth-plugin. Lorsque je testais via la console Rails et obtenais cette erreur, j'ai pensé que j'avais simplement besoin d'encoder les URL mais j'ai la même erreur lors des tests dans le navigateur, donc je ne suis pas sûr de ce qui ne va pas.URI :: InvalidURIError (mauvais URI (n'est pas URI?):):
Répondre
J'ai eu des ennuis avec URI.split
(retour cette erreur), je ne sais pas si cela vous aide, mais je vais poster ici quelques avertissements pour aussi quelqu'un d'autre ayant cette erreur:
- Vérifiez votre URL n'est pas nul, et c'est un valide.
- Ne
URI.encode(url)
avantURI.parse
(pour éviter des caractères spéciaux) - Est-ce
strip
à la chaîne que vous passez àURI.parse
(pour éviter les espaces blancs avant et arrière).
Tout en un:
uri = URI.parse(URI.encode(url.strip))
ressources connexes: http://www.practicalguile.com/2007/09/15/raising-uriinvalidurierror-from-a-perfectly-valid-uri/
essayez ceci:
safeurl = URI.encode(url.strip)
response = RestClient.get(safeurl)
Pouvez-vous ajouter des détails dans votre réponse s'il vous plaît? – Zulu
Vous pouvez également utiliser ce petit bijou URI alternative: https://github.com/sporkmonger/addressable
Il je s pas de tels problèmes avec cela.
ajouter Très natif, tout espace de noms dans votre code après avoir installé le petit bijou
Addressable::URI
- 1. URI invalide - Comment éviter les erreurs URI :: InvalidURIError?
- 2. ne peut pas diviser ': mauvaise URI (est URI non?):
- 3. URI mauvais format Navigation Silverlight
- 4. Script Kiddie tente de déclencher Rails URI :: InvalidURIError - comment filtrer?
- 5. URI :: InvalidURIError alors que je teste avec rspec + capybara
- 6. URI :: InvalidURIError lors de l'analyse des arguments à l'URL
- 7. RestSharp Invalid URI: Le schéma URI n'est pas valide
- 8. Ruby URI fusion et échappement
- 9. URI CodeIgniter ne fonctionne pas
- 10. decodeURIComponent (uri) ne fonctionne pas?
- 11. HttpPost URI n'est pas plein
- 12. Android convertir le contenu URI au fichier URI
- 13. Algorithme pour la conversion IRI-URI/URI-IRI
- 14. Convertir Uri en String et String en Uri
- 15. Mappage des URI musicbrainz dans les URI Spotify
- 16. . URI NET: Comment changer une partie d'un URI?
- 17. Obtenir la uri relative de la uri absolue
- 18. URI personnalisée pour HTTPListener?
- 19. Validation URI en JavaScript
- 20. Mono - Uri classe
- 21. Bibliothèque URI pour Python
- 22. Hashbang versus URI parse
- 23. Birt image dynamique uri
- 24. Jquery URI Anchor
- 25. JMS uri questions
- 26. Android Email Uri
- 27. ASP.NET: gestion URI
- 28. TexBox, Uri et classes
- 29. Uri de FilePath
- 30. chameau paramètre uri dynamique
Faire cela encore ne m'a pas aidé diviser le haut url. Des conseils à ce sujet? J'ai été capable de trouver un indice sur l'utilisation de l'outil de recherche de pièces personnalisées de l'URI ici: http://www.ruby-doc.org/stdlib-1.9.3/libdoc/uri/rdoc/URI.html#comment-726255789, mais Je ne sais pas quoi remplacer pour mon problème (les paramètres de requête ont des caractères non acceptés par 'URI.split'). – thekingoftruth
En fait, je pense que je vais utiliser un simple 'regex' pour ce que je dois faire, en fait. 'URI.split' semble être un analyseur incomplet de rfc3986, il vaut donc peut-être mieux le contourner et sauver des maux de tête. – thekingoftruth
où placeriez-vous cela? dans le contrôleur de recherche par exemple ou dans un fichier de configuration? Merci! –