Je m'appelle yuki. Grâce à DMMWEBCAMP, je travaille maintenant en tant qu'ingénieur WEB, rassemblant mes amis pour développer des services, enseignant la programmation en tant que tuteur et profitant de ma vie d'ingénieur au quotidien.
Nous fournissons également une assistance et des questions d'erreur pour ceux qui visent des inexpérimentés, donc si vous êtes intéressé, veuillez contacter DM.
J'ai eu un problème lorsque j'utilisais Rails comme API et que je collectais des images en utilisant gem twitter
.
L'URI de l'image acquise par l'API Twitter commence par http
, et un avertissement de" not safe "est apparu sur le site où la communication https est possible.
Au fait, à ce moment-là, j'obtenais cette erreur sur la console.
Mixed Content: The page at 'https://hogehoge.com' was loaded over HTTPS, but requested an insecure image 'http://hogehoge.net/hoge.jpg. This content should also be served over HTTPS.
Cela semble être appelé contenu mixte. Au début, je ne pouvais pas penser à un moyen de le mettre en place cette fois, alors j'ai réussi à le faire à la réception, mais je l'ai réparé car cela devrait être fait à l'arrière.
examples_controller.rb
def show
client = Authorization.init #C'est une classe unique. Contient des informations sur le client.
@data = client.search("#Balises de hachage que vous souhaitez collecter", result_type: "recent").take(4).collect do |tweet|
{
"image": "#{tweet.user.profile_image_url.to_s.sub('http', 'https')}",
"name": "#{tweet.user.name}",
"text": "#{tweet.full_text}",
"tweet_link": "#{tweet.uri}"
}
end
render json: {tweet: @data}
end
Pour expliquer ce que nous faisons, nous collectons 4 tweets avec une balise de hachage spécifique et les renvoyons sous forme de données json. La partie importante cette fois est "" image ":" # {tweet.user.profile_image_url.to_s.sub ('http', 'https')} ",`.
Cela a été enseigné par un autre ingénieur, mais quand je regarde ʻuser.profile_image_url` sur la console rails, le résultat est retourné sous forme de données (?) Que je ne comprends pas un peu, mais par to_s C'est devenu une belle URL.
J'ai l'impression de convertir en appliquant la sous-méthode là-bas.
Notez que vous utilisez sub au lieu de gsub. La raison est que s'il y a une chaîne de caractères "http" dans une partie de l'URL de l'image (autre que le début), elle sera convertie de manière incorrecte et l'image ne sera pas affichée.
J'espère que cela aide quelqu'un.