非同期でのデッドリンクチェック
非同期デッドリンクチェック
RSSやお気に入りを非同期でDB登録して、コールバックでアプリ側に表示処理を走らせる場合等。
存在しないURLを登録すると削除する処理も面倒だし、表示のイレギュラも面倒なので事前チェックをしたい。
詳細に行おうとすると一苦労なので、簡単に実行。
/** * * 非同期でデッドリンクを簡易チェック * @param _args url URL * timeout タイムアウト(ms) [default 2000ms] * success 接続成功時コールバック * error 接続失敗時コールバック * before 接続中処理関数 [optional] * @retval void * */ checkDeadLink : function ( _args ) { // チェック if ( !_args || !_args.url || !_args.success || !_args.error ) return; // 非同期実行 $.ajax({ url : _args.url ,timeout : _args.timeout || 2000 ,success : _args.success ,error : _args.error ,beforeSend : _args.before || function(){} }); }
上記のように何かのメソッドとして定義されている体で、これにURLと成功・失敗のコールバックをハッシュで渡せば良い。
簡易なのでリトライなどは仕込んでいない。