问题列表 - 第25362页

将webservice直接暴露给Web客户端或在其间保留瘦服务器端脚本层?

我正在开发一个REST Web服务(Java,Jersey).我正在这样做的人希望通过Javascript直接访问web服务.一些本能告诉我这不是一个好主意,但我无法真正解释这种本能.我的自然方法是让webservice进行真正的逻辑和数据库访问,但也有一些(相对较薄的)服务器端脚本层(例如在PHP中).客户端将与PHP层进行通信,而PHP层又与Web服务进行通信.(web服务对于apache/PHP服务器来说是本地的,并且隐含地信任来自脚本层的调用.脚本层将负责会话管理.)(顺便说一下,我不是说只是将web服务隐藏在Apache之后重定向呼叫.)

但是当我发现自己缺乏解释我的直觉的言论/论据时,我想知道我的直觉是否正确 - 请注意,虽然我已经用各种语言和框架开发了各种各样的软件17年,但这是我第一次开发web服务.

所以我的问题基本上是:你的意见是什么?有没有标准的设置?我的直觉完全错了吗?还是部分?,P

非常感谢,

马克斯

PS:我可能会添加一些有关整个应用程序计划使用情况的信息:

  • 将由不同类型的用户访问,部分是普通公众,部分特权
  • 因此,所有主要的OS /浏览器组合都可以作为客户端
  • 但是,写客户不是我的责任
  • 可能会有很高的负载/流量
  • webservice的逻辑将在以后大规模扩展为另一个产品,该产品基本上是当前项目功能的超集
  • 很有可能在某些时候应该暴露出可供第三方开发人员使用的API - 显然,有一些限制
  • 在某些时候,产品的公众视图也应该可以通过智能手机访问(换句话说,可能是网站的自定义版本,以适应较小的显示和不同的输入方法)

java architecture web-services

6
推荐指数
1
解决办法
325
查看次数

jQuery - 获取元素的第二级父级

我正在尝试检索<a>元素的父级(祖父母?)的父级.我想找到那个祖父母,然后在该元素中找到<b>标签,然后将该文本存储为变量以在页面的其他位置发布.我一直在尝试使用parent()函数,但没有成功.

这是我试过的代码:

    $('.mixPlayCell a').click( function() {
        var title = $(this).parent().get(0).parent().get(0).text();
        alert(title);
    });
Run Code Online (Sandbox Code Playgroud)

html jquery parent

41
推荐指数
3
解决办法
5万
查看次数

MySQL从CSV数据加载NULL值

我有一个文件,可以包含3到4列数字,用逗号分隔.当空字段位于行的末尾时,将定义空字段:

1,2,3,4,5
1,2,3,,5
1,2,3
Run Code Online (Sandbox Code Playgroud)

下表是在MySQL中创建的:

+-------+--------+------+-----+---------+-------+
| Field | Type   | Null | Key | Default | Extra |
+-------+--------+------+-----+---------+-------+
| one   | int(1) | YES  |     | NULL    |       | 
| two   | int(1) | YES  |     | NULL    |       | 
| three | int(1) | YES  |     | NULL    |       | 
| four  | int(1) | YES  |     | NULL    |       | 
| five  | int(1) | YES  |     | NULL    |       | 
+-------+--------+------+-----+---------+-------+

我正在尝试使用MySQL LOAD命令加载数据:

LOAD DATA …
Run Code Online (Sandbox Code Playgroud)

mysql csv load-data-infile

160
推荐指数
4
解决办法
14万
查看次数

Jquery UI选项卡:当我关闭它时,如何隐藏选项卡及其对应的div

我使用了Jquery UI选项卡,并给出了选项卡的关闭选项.默认情况下,我创建三个选项卡及其对应的三个div.现在,当我关闭选项卡时,选项卡及其div将被删除.我需要隐藏选项卡和div,当我单击添加选项卡时,我应该只显示隐藏的选项卡和div.我不知道如何显示/隐藏tab和div属性.

提前致谢.

Jeevi

jquery-ui-tabs

6
推荐指数
2
解决办法
3万
查看次数

如何找到可用的端口?

我想启动一个监听端口的服务器.我可以明确指定端口,它可以工作.但我想以自动方式找到一个端口.在这方面,我有两个问题.

  1. 我应该在哪个端口号范围内搜索?(我使用了端口12345,12346和12347,它很好).

  2. 如何确定某个端口是否未被其他软件占用?

java sockets port networking

188
推荐指数
11
解决办法
17万
查看次数

如何将包含空格的选项传递给LaTeX/XeLaTeX中的包

当我声明一个包含空格的选项时,LaTeX/XeLaTeX会吃它.

在主.tex中,我有:

\usepackage[test font]{test}
Run Code Online (Sandbox Code Playgroud)

在我的.sty文件中,我有:

\DeclareOption*{\newfontfamily\testfont[Scale=1]{\CurrentOption}}
\ProcessOptions
Run Code Online (Sandbox Code Playgroud)

但是Tex引擎传递给包testfont选项而不是测试字体.

所以问题是如何将包含空格的选项传递给包.

latex tex xelatex

6
推荐指数
2
解决办法
689
查看次数

PHP正确的缩进?

我是一个初学的PHP编码器,最近我被告知我没有正确缩进我的代码.他们说这是错的:

    if($something) {
        do_something();
        }
    else {
        something_more();
        and_more();
        }
Run Code Online (Sandbox Code Playgroud)

这是对的吗?

    if($something) {
        do_something();
    } else {
        something_more();
        and_more();
    }
Run Code Online (Sandbox Code Playgroud)

真?我愿意在最近的将来成为开源编码器,这就是为什么我要问如何以良好的方式编写代码.

php indentation

10
推荐指数
1
解决办法
5970
查看次数

什么时候使用方法与属性进行类定义更好?

部分与我之前的问题相关,我有一个系统,我必须将复杂数据存储为字符串.我没有将这些字符串解析为各种单独的对象,而是创建了一个包含所有这些对象的类,它有一些解析器逻辑将所有属性编码为字符串,或解码字符串以获取这些对象.这一切都很好,很好.这个问题不是关于解析器本身,而是关于我应该在哪里容纳解析器的逻辑.把它作为一种财产或一种方法是一个更好的选择吗?

例如,在属性的情况下public string DataAsString,get访问器将容纳将所有数据编码为字符串的逻辑,而set访问器将解码输入值并设置类实例中的所有数据.这似乎很方便,因为输入/输出确实是一个字符串.

在方法的情况下,一种方法将Encode()返回编码的字符串.然后,构造函数本身将容纳解码字符串的逻辑并需要字符串参数,或者我编写一个Decode(string str)单独调用的方法.在任何一种情况下,它都将使用方法而不是属性.

那么,就代码的实际运行而言,这些路径之间是否存在功能差异?或者他们基本上是等同的,然后归结为个人偏好的选择或哪个看起来更好?在那个问题中......无论如何哪个看起来更干净?

c# methods class-design properties

3
推荐指数
2
解决办法
260
查看次数

Android模拟器系统分区无法启动空间

我的Android模拟器有一个奇怪的问题.我通过Android AVD管理器创建了一个虚拟设备(新创建的模拟器,平台2.1和API级别7).我尝试过标准设置和增加的硬件参数,用于更大(256 MB)的设备RAM大小,但没有任何改变.

我需要将文件送到系统分区来测试项目(称为haggle),但由于某种原因,系统分区从开始就没有空间.

aa a@aaa /home/haggle-0.2-android
$ adb -s emulator-5554 shell

 # df
df
/dev: 47084K total, 0K used, 47084K available (block size 4096)
/sqlite_stmt_journals: 4096K total, 0K used, 4096K available (block size 4096)
/system: 73600K total, 73600K used, 0K available (block size 4096)
/data: 65536K total, 18464K used, 47072K available (block size 4096)
/cache: 65536K total, 1156K used, 64380K available (block size 4096)
Run Code Online (Sandbox Code Playgroud)

如您所见,系统分区有0K可用空间.当连接一个非根的HTC Nexus One并执行相同操作时,我得到以下值:

/dev: 108896K total, 0K used, 108896K available (block size 4096)
/sqlite_stmt_journals: 4096K …
Run Code Online (Sandbox Code Playgroud)

android emulation adb

17
推荐指数
2
解决办法
1万
查看次数

检测表是否包含Android/sqlite中的列

所以我在市场上有一个应用程序,有了更新,我想在数据库中添加一些列.到目前为止没问题.但我想检测正在使用的数据库是否缺少这些列,如果是这种情况则添加它们.我需要动态完成此操作,而不仅仅是在更新到新版本之后,因为应用程序应该仍然能够导入旧数据库.通常我可以使用PRAGMA查询,但我不知道如何使用Android.我不能使用execSQL,因为它是一个查询,我无法弄清楚如何使用PRAGMA与query() - 函数.

当然,我可以捕获异常,然后添加列,或者在我开始使用它之前始终将列添加到每个表中,但这不是一个简洁的解决方案.

干杯,

sqlite android pragma

4
推荐指数
1
解决办法
5522
查看次数