#javascript #jquery #html
#javascript #jquery #HTML
Вопрос:
РЕДАКТИРОВАТЬ: я сам нашел решение, но я хотел бы получить ответ, почему это сработало. Я удалил https: // из URL-адреса, и это устранило проблему. Не уверен, почему это может быть проблемой. Может быть, этот https более безопасен?
Вот некоторые из моих соответствующих HTML и Js-кодов, они написаны на codepen, поэтому заголовки и библиотеки не находятся непосредственно в коде. Вот ссылка на страницу codepen:https://codepen.io/slicknick/pen/vXVYpg
Это проект по созданию генератора случайных цитат с использованием Forismatic API. Я новичок в API и Js. Кажется, я не могу заставить цитаты отображаться на моей странице и хотел бы получить отзывы о том, почему это может происходить.
HTML
<div class="container-fluid">
<div class="row">
<div class="col-xs-6 col-centered">
<blockquote>
<p id="quote-text"></p>
<footer>
<a id="author" target="_blank"></a>
</footer>
</blockqoute>
<button type="button" id="getQuote" class="btn btn-secondary">New quote</button>
<a href="http://twitter.com/home?status=#Quote" target="_blank"><i class="fa fa-twitter-square fa-3x" id="twitter-share" aria-hidden="true"></i></a>
</div>
</div>
$(function() {
var author = $('#author');
var text = $('#quote-text');
getQuote(author, text);
$('#getQuote').click(function(event) {
event.preventDefault();
getQuote(author, text);
$('#twitter-share').removeClass("disabled");
$('#twitter-share').html("Share with Twitter!");
})
});
var tweetText = "";
$('#twitter-share').click(function() {
if (tweetText.length > 140) {
tweetText = "";
$(this).addClass("disabled");
$(this).html("140 chars exceeded!");
} else {
$(this).attr("href", "https://twitter.com/intent/tweet?text=" tweetText);
}
})
function getQuote(author, text) {
var forismaticURL = "http://api.forismatic.com/api/1.0/? method=getQuoteamp;lang=enamp;format=jsonpamp;jsonp=?"
$.getJSON(forismaticURL, function(data) {
text.html(data.quoteText);
if (data.quoteAuthor) {
author.html(data.quoteAuthor);
author.attr("href", data.quoteLink);
} else {
author.removeAttr("href");
author.html("<strong>Anonymous</strong>");
}
tweetText = data.quoteText "By -" data.quoteAuthor;
});
}
Ответ №1:
Цитирую документацию Forismatic API
Вызовы методов API реализованы в форме HTTP-запросов к URLhttp://api.forismatic.com/api/1.0 /.
Вот почему вы получаете ошибку 404 на HTTPS.
Надеюсь, это поможет.
Комментарии:
1. Спасибо, это так. Я уверен, что буду лучше разбираться в вещах, чем глубже я войду в API.