在config / env文件上尾随或前导斜杠?

时间:2018-05-16 08:44:13

标签: javascript

我们有一个配置文件,它被加载到应用程序中。配置文件包含端点的基本URL。例如:

MY_RESOURCE_BASE_URL = "http://www.google.com/"

现在在我的代码中,我会执行以下操作:

MY_RESOURCE_BASE_URL + "search?q=1000+kittens"

现在我的问题是,MY_RESOURCE_BASE_URL凯莉应该是领先的斜线还是/search?q=1000+kittens

1 个答案:

答案 0 :(得分:0)

考虑使用像concatUrl这样的函数,因此它根本不重要,因为如果你添加前导斜杠或尾部斜杠,它就会起作用:



const removeTrailingSlash = url => 
      url.endsWith ( '/' ) ? url.substring( 0, url.length - 1 ) : url

const removeLeadingSlash = url =>
      url.startsWith ( '/' ) ? url.substring( 1 ) : url

const concatUrl = ( partA, partB ) => 
     `${removeTrailingSlash( partA )}/${removeLeadingSlash ( partB )}`
     
const host = 'http://google.com/'
const path = '/search'

const host2 = 'http://google.com'
const path2 = 'search'

const url = concatUrl ( host, path )
const url2 = concatUrl ( host2, path2 )

console.log ( url )
console.log ( url2 )