13

ユーザーの最新の速度テスト結果を表示するウィジェットを作成したいと思います。speedtest.netには使用できるAPIがありますか?http://speedtest.net/csv.php?csv=1&ria=0&s=0にajaxリクエストを送信しようとしましたが、クロスドメインエラーが発生しました。iframeを試しましたが、ダウンロードに表示されました。

これはGoogleChrome拡張機能に含まれるため、必要に応じてchromeapiを使用できます。

4

4 に答える 4

12

speedtest.netは、OoklaとそのSpeedTestアプリケーションによって実行されます。残念ながら、彼らはあなたが使用できるspeedtest.net用のパブリックAPIを提供していません。

これらのいずれかがお客様のニーズを満たしているかどうかは疑問ですが、Speed Test Miniと、完全なSpeed Testソフトウェアパッケージ(CSVエクスポート機能を含む)用のホストされたレポートソリューションを提供します。

AJAXを使用できない理由はAccess-Control-Allow-Origin、speedtest.netからの応答で応答ヘッダーがそのような要求を許可するように設定されていない限り、ChromeはJavaScriptがクロスサイト要求を実行することを許可しないためです。

ただし、Chrome拡張機能では、manifest.jsonファイルの権限セクションにURLを追加することで、クロスオリジンリクエストを許可できます。例えば:

"permissions": [
  "http://*/"
],

次に、jQueryを少し使用して、CSVデータを文字列として取得できます(この回答を参照)。

$.get('http://speedtest.net/csv.php?csv=1&ria=0&s=0', function(data) {
    var csv = new String(data);
    // do stuff with csv
}, dataType='text');
于 2012-04-05T06:50:15.320 に答える
3

MySpeed.todayをお試しください。それはうまくいくかもしれません。

于 2016-08-09T08:01:21.090 に答える
2

OoklaはAPIを提供します

APIキーを取得する必要があります。また、サンプルのPythonスクリプトも提供しています。

于 2019-09-13T15:22:13.370 に答える
1

パーミッションをリクエストし場合は、Chrome拡張機能でクロスオリジンXMLHttpRequestsを作成できます。

manifest.jsonファイルにURIを追加します。

"permissions": ["http://speedtest.net/csv.php?*"]

参照:一致パターン

于 2012-04-05T06:32:43.757 に答える