路由时获取网站URL

时间:2016-06-27 01:53:54

标签: node.js express

抱歉,我的词汇量非常有限,任何澄清这个问题的帮助都深表赞赏。

我正在使用Nodejs和Express构建服务器,它有一条像/new/:url这样的路由。我使用req.params.url访问网址上传递的值。这适用于简单的字符串,例如chocolate,但是,如果我传递网站网址,例如http://www.google.com,则不会将其路由到/new/:url

问题:我如何通过网站网址和Node / Express访问它?

编辑:我正在尝试使用GET方法,显然解决此问题的方法是通过Wildcards / Regex。

非常感谢您的帮助!

3 个答案:

答案 0 :(得分:1)

使用Post方法。

  1. 设置标题"内容类型" :" application / json"
  2. 设置身体{" urlblahblah~" :" https://www.google.com" }
  3. 然后在服务器端将其解析为JSON

答案 1 :(得分:1)

您可以使用Javascripts encodeURIComponent,因此当您在客户端上传递到服务器时,您将全部对url进行编码,因此您可以将其作为常规参数传递。或者如Hulk所提到的,如果发布是一个选项,你也可以将它作为身体参数传递......

<Button>:
    size_hint:0.33,0.8/3

<GameScreen@BoxLayout>:
    Button:
        name:"1"
        text:self.name
        color:(0,1,0,1) if self.pressed else (1,0,0,1)
        pos_hint:{"left":0,"bottom":1}
        pressed: False
        on_press:self.pressed=not self.pressed;my_score.value+=1

    Button:
        name:"2"
        text:self.name
        color:(0,1,0,1) if self.pressed else (1,0,0,1)
        pos_hint:{"x":0.33,"bottom":1}
        pressed: False
        on_press:self.pressed=not self.pressed;my_score.value+=1
    Label:
        id:my_score
        size_hint:0.2,0.2
        pos_hint:{"x":0.4,"y":0.8}
        value: 78
        text:str(self.value)

将导致:

`
Sub aaaa()
'
' aaaa Macro
'
'
    Selection.Find.ClearFormatting
    Selection.Find.Replacement.ClearFormatting
    With Selection.Find
        .Text = "n"
        .Replacement.Text = ChrW(11419) & ChrW(769)
        .Forward = True
        .Wrap = wdFindContinue
        .Format = True
        .MatchCase = False
        .MatchWholeWord = False
        .MatchKashida = False
        .MatchDiacritics = False
        .MatchAlefHamza = False
        .MatchControl = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
    End With
    Selection.Find.Execute Replace:=wdReplaceAll
End Sub
`

作为param传递是安全的

答案 2 :(得分:0)

对我有用的解决方案是Regex。我没有使用/new/:url进行路由,而是使用了:

/new/:url(*)

因此,如果http://www.google.com作为参数提供:

req.params.url = "http://www.google.com"