私はES7 async
/await
と一緒にfetch
を使用しようとしています。私は近くにいるが、私はそれを働かせることができないことを知っている。ここでは、コードは次のようになります。async/fetchとの組み合わせでは動作しません。
class Bar {
async load() {
let url = 'https://finance.yahoo.com/webservice/v1/symbols/goog/quote?format=json';
try {
response = await fetch(url);
return response.responseText;
} catch (e) {
return e.message;
}
}
}
:
let bar = new Bar();
bar.load().then(function (val) {
console.log(val);
});
私は常にメッセージどれ
response is not defined
でcatch
に入るいくつかの理由私が間違っていることを示唆している?
UPDATE:コメントで示唆したように、それはfetch
と問題になる可能性がありますので、私は単純化(ES5)バージョン試してみました:
<!doctype html>
<html>
<head>
<script>
var url = 'https://finance.yahoo.com/webservice/v1/symbols/goog/quote?format=json';
fetch(url, {method: 'get', mode: 'cors'}).then(function (response) {
console.log(response.responseText);
});
</script>
<head>
<body></body>
<html>
をそして、私は交換した場合、まだ、しかし:(機能しません。クラスコードは常に厳格なコードである
var request = new XMLHttpRequest();
request.open("GET", url, false);
request.send(null);
console.log(request.responseText);
私はあなたが間違ってフェッチ使用していると思う - フェッチが、これは間違っているものをhttps://developer.mozilla.org/en-US/docs/Web/API/Fetch_API –
まだわからない場合。私は '{method: 'get'}'を 'fetch'呼び出しに追加しようとしましたが、うまくいきませんでした。 –
CORSの問題に遭遇しているようにも見えます –