servlet如何获取url传递的参数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了servlet如何获取url传递的参数相关的知识,希望对你有一定的参考价值。

在Servlet的doGet或doPost方法中,调用以下三个方法均可:
  
String param = request.getParameter("paramName");
Map paramMap = request.getParameterMap();
String[] paramArray = request.getParameterValues("paramName");  第一个表示参数最常用,表示根据参数取到对应的参数值,且参数值只有一个
  第二个表示一次性的取得客户端的所有参数以及参数值,并返回一个Map
  第三个更通用一些,因为客户端可能会同一个参数返回多个值(如:客户端的checkbox列表,可同时选中多个),形成一个数组。
望采纳!
参考技术A 你这样写是获取不到type的,可以使用隐藏表单域
用户名
密码
这样就可以获取到了,试试看!

如何获取传递给 django CBV 的 URL 参数?

【中文标题】如何获取传递给 django CBV 的 URL 参数?【英文标题】:How Do I get a URL parameter passed into a django CBV? 【发布时间】:2013-06-29 04:03:33 【问题描述】:

我有一个 urls.py 文件设置如下

from django.conf.urls import patterns, include, url
from .views import *

urlpatterns = patterns('',
    url(r'^$', BlogListView.as_view()),
    url(r'(?P<blog_id>)\d1,/$', BlogDetailView.as_view())
)

与相关视图

class BlogDetailView(View):
    def get(self, request, blog_id, *args, **kwargs):
        post = Blog.objects.get(post_id=blog_id).to_detail_json
        return HttpResponse(json.dumps(post), mimetype='application/json')

访问 127.0.0.1:8000/blog/1/ 时出现错误

ValueError at /blog/4/
invalid literal for int() with base 10: ''

但如果我改变了

post = Blog.objects.get(post_id=blog_id).to_detail_json

post = Blog.objects.get(post_id=1).to_detail_json

然后我得到正确的响应。

如果需要,这是我的模型

from mongoengine import *
from collections import OrderedDict

import datetime
import json

class Blog(Document):
    post_id = IntField(unique=True)
    title = StringField(max_length=144, required=True)
    date_created = DateTimeField(default=datetime.datetime.now)
    body = StringField(required=True)

    def __init__(self, *args, **kwargs):
        self.schema = 
        "title": self.title,
        "date": str(self.date_created),
        "id": self.post_id,
        "body": self.body
    
            super(Blog, self).__init__(*args, **kwargs)
    @property
    def to_detail_json(self):
        fields = ["id","title", "date", "body"]
        return key:self.schema[key] for key in fields

    @property
    def to_list_json(self):
        fields = ["title", "date"]
        return key:self.schema[key] for key in fields

更新

我将 BlogDetailView 更改为返回

return HttpResponse(json.dumps(self.kwargs),mimetype='application/json')

它给了我


    blog_id: ""

这让我相信这是我的 urls.py 文件的问题,但我没有看到错误。

【问题讨论】:

【参考方案1】:

原来是这样

url(r'(?P<blog_id>)\d1,/$', BlogDetailView.as_view())

应该是

url(r'(?P<blog_id>\d1,)/$', BlogDetailView.as_view())

【讨论】:

【参考方案2】:

试试

post = Blog.objects.get(post_id=self.kwargs['blog_id']).to_detail_json

【讨论】:

不客气,顺便说一句,最好回答你自己的问题并将其标记为解决方案。

以上是关于servlet如何获取url传递的参数的主要内容,如果未能解决你的问题,请参考以下文章

请教高手,servlet中如何获取URL中的这种参数

如何获取传递给 django CBV 的 URL 参数?

ASP.NET如何获取url参数

如何获取url中的参数并传递给iframe中的报表

php如何获取url的参数

Django:如何获取在 url 中传递的参数值? [复制]