logging与改造2

我正在尝试获取请求中正在发送的确切的JSON。 这是我的代码: OkHttpClient client = new OkHttpClient(); client.interceptors().add(new Interceptor(){ @Override public com.squareup.okhttp.Response intercept(Chain chain) throws IOException { Request request = chain.request(); Log.e(String.format("\nrequest:\n%s\nheaders:\n%s", request.body().toString(), request.headers())); com.squareup.okhttp.Response response = chain.proceed(request); return response; } }); Retrofit retrofit = new Retrofit.Builder() .baseUrl(API_URL) .addConverterFactory(GsonConverterFactory.create()) .client(client).build(); 但是我只在日志中看到这个: request: com.squareup.okhttp.RequestBody$1@3ff4074d headers: Content-Type: application/vnd.ll.event.list+json 我该如何做适当的日志logging,因为删除了我们用于Retrofit 1的setLog()和setLogLevel() ?

MongoDB:是否可以做一个不区分大小写的查询?

例: > db.stuff.save({"foo":"bar"}); > db.stuff.find({"foo":"bar"}).count(); 1 > db.stuff.find({"foo":"BAR"}).count(); 0

SQL数据读取器 – 处理空列值

我正在使用SQLdatareader从数据库中build立POCO。 代码工作,除非在数据库中遇到空值。 例如,如果数据库中的FirstName列包含空值,则会引发exception。 employee.FirstName = sqlreader.GetString(indexFirstName); 在这种情况下处理空值的最好方法是什么?

为了散列而隐藏盐的必要性

在工作中,我们有两个相互竞争的盐理论。 我所使用的产品使用类似于用户名或电话号码的forms来encryption散列。 本质上,每个用户都有所不同,但是我们随时可用。 另一个产品为每个用户随机生成一个盐,每当用户更改密码时都会更改。 盐在数据库中被encryption。 我的问题是如果第二种方法真的有必要? 我从纯粹的理论angular度可以理解,它比第一种方法更安全,但从实践的angular度来看呢。 现在要validation用户,salt必须是未encryption的并应用于login信息。 思考一下之后,我从这个方法看不到真正的安全收益。 即使攻击者知道如何快速确定每个帐户的内容,但是将帐户之间的差异更改为帐户,仍然使得有人尝试强制哈希algorithm变得极其困难。 这是假设密码足够强。 (很明显,find一组密码的正确哈希,它们都是两位数字比find8位密码的正确哈希要容易得多。 我在逻辑上是不正确的,还是有我失踪的东西? 编辑:好吧,这就是为什么我认为这是真的没有什么encryption盐。 (让我知道我是否在正确的轨道上)。 对于下面的解释,我们假定密码总是8个字符,salt是5,所有的密码都是由小写字母组成(这只是使math更容易)。 对于每一个入口,盐的含量不同意味着我不能使用同一个彩虹桌(实际上,如果我有足够的尺寸,我可以做到这一点,但是暂时忽略这一点)。 根据我的理解,这是真正的盐的关键,因为要破解每一个帐户,我必须重新发明轮子,为每一个说话。 现在,如果我知道如何将正确的salt应用于密码来生成散列,我会这样做,因为salt实际上只是扩展了散列短语的长度/复杂度。 所以我会减less我需要产生的可能组合的数量,以“知道”我有13 ^ 26到8 ^ 26的密码+盐,因为我知道盐是什么。 现在,这使得它更容易,但仍然很难。 所以encryption盐。 如果我知道盐是encryption的,我不会尝试解密(假设我知道它有足够的encryption级别)。 我会忽略它。 回到前面的例子,我只想生成一个包含13 ^ 26所有键的更大的彩虹表,而不是试图找出解密的方法。 不知道盐会一定减慢我的速度,但我不认为这会增加尝试破解盐encryption的巨大任务。 这就是为什么我不认为这是值得的。 思考? 这里是一个链接,描述了在一个暴力攻击下密码将持续多长时间: http : //www.lockdown.co.uk/? pg=combi

Java中使用HttpClient的HTTP基本身份validation?

我试图在Java中模仿这个curl命令的function: curl –basic –user username:password -d "" http://ipaddress/test/login 我使用Commons HttpClient 3.0编写了以下内容,但不知何故最终从服务器获得了500 Internal Server Error 。 有人可以告诉我,如果我做错了什么? public class HttpBasicAuth { private static final String ENCODING = "UTF-8"; /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub try { HttpClient client = new HttpClient(); client.getState().setCredentials( new AuthScope("ipaddress", 443, "realm"), […]

用同样的方法在一个类中实现两个接口。 哪个接口方法被覆盖?

两个接口具有相同的方法名称和签名。 但是由一个类实现,那么编译器将如何识别哪个接口是哪个方法? 例如: interface A{ int f(); } interface B{ int f(); } class Test implements A, B{ public static void main(String… args) throws Exception{ } @Override public int f() { // from which interface A or B return 0; } }

将WPFcombobox绑定到自定义列表

我有一个ComboBox似乎并没有更新SelectedItem / SelectedValue。 ComboBox ItemsSource被绑定到ViewModel类的一个属性上,它将一大堆RAS电话簿条目列为一个CollectionView,然后我将SelectedItem或SelectedValue绑定到ViewModel的另一个属性(在不同的时间)。 我在Save命令中添加了一个MessageBox来debugging由数据绑定设置的值,但是SelectedItem / SelectedValue绑定没有被设置。 ViewModel类看起来像这样: public ConnectionViewModel { private readonly CollectionView _phonebookEntries; private string _phonebookeEntry; public CollectionView PhonebookEntries { get { return _phonebookEntries; } } public string PhonebookEntry { get { return _phonebookEntry; } set { if (_phonebookEntry == value) return; _phonebookEntry = value; OnPropertyChanged("PhonebookEntry"); } } } _phonebookEntries集合正在业务对象的构造函数中初始化。 ComboBox XAML看起来像这样: […]

testing如果事件处理程序绑定到jQuery中的元素

是否有可能确定一个元素是否有一个点击处理程序,或更改处理程序,或任何types的事件处理程序绑定到它使用jQuery? 此外,是否有可能确定对于给定types的事件有多less点击处理程序(或任何types的事件处理程序),以及事件处理程序中有哪些函数?

如何将浮动转换为可读的分数?

假设我们有0.33,我们需要输出“1/3”。 如果我们有“0.4”,我们需要输出“2/5”。 这个想法是让用户理解“x部分y”是理解数据的一种更好的方法。 我知道百分比是一个很好的替代品,但我想知道是否有一个简单的方法来做到这一点?

Android:AsyncTask vs服务

为什么我在这里读到大部分有关AsyncTask和Loaders的问题的答案,但没有提供有关服务的内容 ? 服务是不是很好知道,或者是否被弃用或有一些不好的属性或东西? 有什么区别? (顺便说一句,我知道还有其他的线索,但是没有一个真正的差异可以帮助开发人员轻松地决定他是否更好地使用这个或那个来解决实际问题。)