程序设计

专业和发烧友程序员的问答

3
URL矩阵参数与查询参数
我想知道是在URL中使用矩阵还是查询参数。我发现对该主题的较早讨论并不令人满意。 例子 带有查询参数的URL:http://some.where/thing?paramA = 1&paramB = 6542 带有矩阵参数的URL:http://some.where/thing; paramA = 1; paramB = 6542 乍看之下,矩阵参数似乎只有优点: 更具可读性 不需要对XML文档中的“&”进行编码和解码 带有“?”的网址 在许多情况下不会被缓存;具有矩阵参数的URL被缓存 矩阵参数可以出现在路径的任何地方,并且不限于其结尾 矩阵参数可以具有多个值: paramA=val1,val2 但是也有缺点: 只有少数框架(如JAX-RS)支持矩阵参数 当浏览器通过GET提交表单时,这些参数成为查询参数。因此,对于同一任务,它以两种参数结束。为了不混淆REST服务的用户并限制服务开发人员的工作量,在此区域中使用始终查询参数会更容易。 由于服务的开发人员可以选择支持矩阵参数的框架,因此唯一的缺点是浏览器默认会创建查询参数。 还有其他缺点吗?你会怎么做?
178 http  url  rest  parameters  jax-rs 

7
通过用户的触摸画出完美的圆圈
我有这个练习项目,允许用户在用手指触摸时在屏幕上绘制。我做的非常简单的App就是锻炼方式。我的小堂兄在用我的iPad在这个App上自由地用手指画东西(孩子画的东西:圆,线等,无论他想到什么)。然后他开始画圆,然后他问我将其设为“好圆”(根据我的理解:将画出的圆完美地画成圆形,因为我们知道,无论我们多么努力地尝试用手指在屏幕上画出一些东西,圆永远不会真正像圆一样圆)。 因此,我的问题是,代码中是否有任何方法可以首先检测用户绘制的形成圆的线,并通过使其在屏幕上完美地变圆来生成大致相同的圆。使一条不太直线的直线是我会知道的方法,但是对于圆形,我不太了解如何使用Quartz或其他方法进行。 我的理由是,在用户抬起手指以证明他实际上试图绘制一个圆这一事实之后,直线的起点和终点必须彼此接触或交叉。

2
在build.gradle文件中写注释的语法是什么?
向下看这个build.gradle文件 apply plugin: 'com.android.application' android { compileSdkVersion 21 buildToolsVersion "21.1.2" defaultConfig { applicationId "package.myapp" minSdkVersion 19 targetSdkVersion 21 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.nineoldandroids:library:2.4.0' } 如果我想什么写评论我为什么选择这个库为这个项目, 在build.gradle文件中写注释的语法是什么?

19
代理与自然/业务密钥的比较[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 6年前关闭。 改善这个问题 再来一次,旧的争论仍然浮现... 我们是否最好将业务密钥作为主键,还是宁愿使用在业务密钥字段上具有唯一约束的代理ID(即SQL Server身份)? 请提供示例或证明来支持您的理论。

3
ASP .NET Identity中的要求是什么
有人可以解释一下,声明机制在新的ASP.NET Identity Core中意味着什么吗? 我所看到的,有一个AspNetUserLogins表,其中包含UserId,LoginProvider和ProviderKey。 但是,我仍然无法理解或找到有关何时将数据添加到AspNetUserClaims表以及该表用于什么情况的任何信息?


2
从GitHub删除关闭的拉取请求
我不小心提出了错误的请求,最终自己关闭了请求。它目前处于关闭状态,但可以通过直接URL访问并显示在我的活动栏中。 有什么办法可以完全删除一个拉取请求,以使其不再可通过URL访问或显示在您的活动历史记录中?




4
Angular2 @输入到具有get / set的属性
我在该组件中有一个Angular2组件,它目前有一堆字段,在它们之前应用了@Input()以允许绑定到该属性,即 @Input() allowDay: boolean; 我想做的实际上是使用get / set绑定到属性,以便可以在setter中执行其他一些逻辑,如下所示 _allowDay: boolean; get allowDay(): boolean { return this._allowDay; } set allowDay(value: boolean) { this._allowDay = value; this.updatePeriodTypes(); } 我将如何在Angular2中做到这一点? 基于Thierry Templier的建议,我将其更改为,但这引发错误无法绑定到“ allowDay”,因为它不是已知的本机属性: //@Input() allowDay: boolean; _allowDay: boolean; get allowDay(): boolean { return this._allowDay; } @Input('allowDay') set allowDay(value: boolean) { this._allowDay = value; this.updatePeriodTypes(); …
178 angular 

12
相对导入-ModuleNotFoundError:没有名为x的模块
这是我第一次真正坐下来尝试python 3,但似乎失败了。我有以下两个文件: test.py config.py config.py中定义了一些函数以及一些变量。我将其简化为以下内容: config.py debug = True test.py import config print (config.debug) 我也有一个 __init__.py 但是,出现以下错误: ModuleNotFoundError: No module named 'config' 我知道py3约定要使用绝对导入: from . import config 但是,这导致以下错误: ImportError: cannot import name 'config' 因此,我对此无所适从……任何帮助将不胜感激。:)


8
Python 3将范围转换为列表
我正在尝试列出其中的数字1-1000。显然,这会令人烦恼,因此我试图创建一个包含范围的列表。在Python 2中,似乎: some_list = range(1,1000) 本来可以用,但是在Python 3中,范围类似于xrangePython 2? 谁能对此提供一些见识?
178 python  python-3.x  list  range 

5
套接字和websocket之间的区别?
我正在构建需要使用套接字连接与另一个应用程序进行通信的Web应用程序。这对我来说是新领域,因此请确保套接字与websockets不同。看来它们只是概念上相似。 发问,因为最初我打算使用Django作为我项目的基础,但是在上面链接到的SO帖子中,很清楚地表明,websocket是不可能的(或者至少不可靠,即使使用django-websockets之类的东西也是如此) )使用首选的Django设置(Apache和mod_wsgi)。但是我发现其他一些文章可以随便导入Python的套接字模块,就像获取服务器的主机名一样简单。 所以: 他们真的不同吗? 有什么理由不将Django用于依赖与外部服务器建立套接字连接的项目吗?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.