问题描述
我制作了一个网页来获得 DuckDuckGo Instant Answer API 结果, https://adamorielly.github.io/Ducksearch/
但是当我尝试发出 fetch GET 请求时,我收到了 405 Method Not Allowed 响应,跨域请求被阻止:同源策略不允许。
我猜这个 API 的目的是允许其他应用程序获取搜索结果并在他们的应用程序上呈现它们, 我做错了吗? ,这是我的代码:
<section class="bd-container">
<div class="duck__search">
<div class="form__div">
<input type="text" id="input1" class="form__input" placeholder="enter your search query">
<label for="" class="form__label"></label>
</div>
<input type="submit" class="button" id="form__button" value="Search">
<div class="duck__result" id="duck__result"></div>
</div>
</section>
我的 JavaScript:
const searchBtn = document.getElementById('form__button')
searchBtn.addEventListener('click',() => {
let formInputs = document.getElementById('input1').value
fetch('https://api.duckduckgo.com/?q='+formInputs+'&format=json',{
method: 'GET',headers: {
'Content-Type': 'application/json'
}
}).then(res => {
console.log(res.status)
console.log(res.statusText)
let result = JSON.parse(res.body)
}).then(data => console.log(data)).catch(err => console.error('err'))
})
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)