ใช้validator.js
ES6
import isURL from 'validator/lib/isURL'
isURL(string)
ไม่มี ES6
var validator = require('validator');
validator.isURL(string)
นอกจากนี้คุณยังสามารถปรับพฤติกรรมของฟังก์ชั่นนี้ได้อย่างละเอียดโดยส่งoptions
วัตถุเสริมเป็นอาร์กิวเมนต์ที่สองของisURL
นี่คือoptions
วัตถุเริ่มต้น:
let options = {
protocols: [
'http',
'https',
'ftp'
],
require_tld: true,
require_protocol: false,
require_host: true,
require_valid_protocol: true,
allow_underscores: false,
host_whitelist: false,
host_blacklist: false,
allow_trailing_dot: false,
allow_protocol_relative_urls: false,
disallow_auth: false
}
isURL(string, options)
host_whitelist
และhost_blacklist
สามารถเป็นอาร์เรย์ของโฮสต์ได้ พวกเขายังสนับสนุนการแสดงออกปกติ
let options = {
host_blacklist: ['foo.com', 'bar.com'],
}
isURL('http://foobar.com', options) // => true
isURL('http://foo.bar.com/', options) // => true
isURL('http://qux.com', options) // => true
isURL('http://bar.com/', options) // => false
isURL('http://foo.com/', options) // => false
options = {
host_blacklist: ['bar.com', 'foo.com', /\.foo\.com$/],
}
isURL('http://foobar.com', options) // => true
isURL('http://foo.bar.com/', options) // => true
isURL('http://qux.com', options) // => true
isURL('http://bar.com/', options) // => false
isURL('http://foo.com/', options) // => false
isURL('http://images.foo.com/', options) // => false
isURL('http://cdn.foo.com/', options) // => false
isURL('http://a.b.c.foo.com/', options) // => false
http
จะเป็นค่าเริ่มต้นที่ไม่มี URL