小编Cra*_*aub的帖子

迭代脚本上的内存消耗

我有一个用PHP编写的脚本和用Javascript编写的相同脚本.
它迭代一百万次,每次将一个字符串剥离成一个数组,并将第一个数组项分配给一个新变量.

PHP是:

class First
{
public function Iterate()
{
    $count = 1000000; 
    $test_string = '';
    $test_array = '';
    $first_word = '';
    for($i=1; $i <= $count; $i++){
        $test_string = 'This is a test string';
        //could use explode but no explode in js
        $test_array = split(" ", $test_string);
        $first_word = $test_array[0];
    }
}
}
$first = new First();
$first->Iterate();
Run Code Online (Sandbox Code Playgroud)

而Javascript是:

function First() {
this.Iterate = function() {
    count = 1000000;
    test_string = '';
    test_array = '';
    first_word = '';
    for(var i=1;i …
Run Code Online (Sandbox Code Playgroud)

javascript php memory node.js

9
推荐指数
1
解决办法
220
查看次数

MSSQL 导入/导出/复制 IDENTITY_INSERT 问题

使用 MS SQL Server Management Studio 2008。
我有一个 db(比如 ip 10.16.17.10 并称为db1)和第二个(比如 ip 10.16.17.25 称为db2)。

我试图将一张(及其内容)从db1复制到db2
我在两者上都有数据库(但在 db2 中为空)。

问题是无论我如何复制/导出/导入,无论我在MS SQL Server Management Studio 2008 中设置什么选项,当我单击“表”->“设计”(在db2 上)时,它总是说“身份规范:否”即使 db1 表有它。

db1我转到“任务”->“导出”->“源/db”和“目标/db”->“编辑映射”->“启用身份插入”并单击它。

但是没有快乐。总是在没有它的情况下出口。
我在db2上尝试了来自 IMPORT 的类似操作。如果我使用 COPY,类似的事情。

我已经阅读了许多关于此的 STACKOVERFLOW 文章,他们都建议将 IDENTITY_INSERT 设置设置为 ON 但当我在下面运行时:

SET IDENTITY_INSERT [dbo].[mytable] ON
Run Code Online (Sandbox Code Playgroud)

该表要么不存在,要么已经在没有标识设置的情况下进行复制,因此请查看错误:

does not have the identity property. Cannot perform SET operation.
Run Code Online (Sandbox Code Playgroud)

我曾尝试将其设置为db2的属性(在数据库属性下),但是当我复制/导入/导出时从未奏效。 …

sql sql-server

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

从脚本/命令行执行浏览器页面/javascript

希望这不是一个愚蠢的问题。
我最近对一些我很好奇的事情有了一个想法。
我是 Node.js(我认为与此无关)和 V8 引擎的粉丝,但我想知道是否可以在内部运行浏览器(让它执行 JS)。

我的意思是创建一个程序(可能使用 V8 引擎),它可以打开一个页面(就像在浏览器中一样)并执行其 javascript。

例如,假设我在 www.mysite.co.uk/home.php 上托管了以下文件

<!DOCTYPE html>
<html>
<head>
<script>
function myFunction()
{
//javascript AJAX call to www.mysite.co.uk/ping.php
}
myFunction();
</script>
</head>

<body>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

ping.php 看起来像:

<?php
//connect mysql, database ping and table ping
//it is a single column table with integer value starting on 0
//increment by 1 and update the table
Run Code Online (Sandbox Code Playgroud)

假设我想通过在命令行/linux 盒子上使用某种脚本来执行 Javascript(基本上不使用浏览器)。

所以像这样:

./mybrowser http://www.mysite.co.uk/home.php
Run Code Online (Sandbox Code Playgroud)

甚至:

./mybrowser home.php
Run Code Online (Sandbox Code Playgroud)

我觉得这应该是可能的,因为 V8(或不同的 JS 引擎)在技术上应该能够执行 Javascript,但我不知道它如何在浏览器上下文中执行此操作(或者即使可能)。

有任何想法吗?

html javascript v8 headless-browser

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

iOS/xcode:didReceiveData在设备上运行时为空但在模拟器上运行良好?

我正在开发一个使用API​​的iphone应用程序.

在' 模拟器 '上它工作正常.在' device '上,api调用所有运行但响应委托都返回EMPTY.

日志:
1)设备didReceiveData返回(空,NSData即<20>):

append data <20>
Run Code Online (Sandbox Code Playgroud)

但这适用于模拟器:

append data <dfgdf89fgd.....>
Run Code Online (Sandbox Code Playgroud)


2)didReceiveResponse予有下面的下面返回装置(设定的NSLog监视NSURLConnection的对象).困惑为什么这不完整:

1 connection <NSURLConnection: 0x147a30>
Run Code Online (Sandbox Code Playgroud)

但这对于模拟器:

1 connection <NSURLConnection: 0x4b76ea0, http://api.site.com/search?id=111>
Run Code Online (Sandbox Code Playgroud)


3)connectionDidFinishLoading下面是用于模拟器

DONE. Received Bytes: 1400
Run Code Online (Sandbox Code Playgroud)

但是下面的设备:

DONE. Received Bytes: 1
Run Code Online (Sandbox Code Playgroud)


我的代码:
我在API文件中有以下代码:

- (void)fetch: (NSString *)id{

    NSMutableData *receivedData = [[NSMutableData alloc]init];//initialised
   self.receivedData = receivedData;//set to available globally

   NSString *initialUrl = [NSString stringWithFormat: @"http://api.site.com/search?id=%@",id]; …
Run Code Online (Sandbox Code Playgroud)

api json objective-c

3
推荐指数
1
解决办法
1569
查看次数

基于 REST 的 API 的安全性

我一直在研究保护 API 以在 android/iphone 应用程序或网站应用程序中使用的技术。
我找到了一种我喜欢的技术,但不确定它是否好或有什么问题(除了是一个非常漫长的过程)。

处理(最初
用户端):首先通过散列用户密码来创建盐。
然后通过散列请求的 url(通过查询字符串在末尾附加用户名)和盐来创建签名。
最后通过散列用户名和签名来创建令牌。
令牌在标头内传递到服务器(每次)。

第一个请求:
第一个请求必须针对验证端点,并包含 device_id 作为查询字符串。
在服务器上完成相同的处理(如上),如果令牌与用户发送的令牌匹配,则 device_id 存储在数据库中并分配给该用户名以供将来参考(设备 ID 可在请求的 url 中找到)并用于此后验证用户名/设备。

所有后续请求:
处理必须在用户端和服务器端进行,现在每个请求的令牌都不同(随着请求的 url 更改)。
没有包含代码,因为它尚未编写。

api rest hash salt token

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

标签 统计

api ×2

javascript ×2

hash ×1

headless-browser ×1

html ×1

json ×1

memory ×1

node.js ×1

objective-c ×1

php ×1

rest ×1

salt ×1

sql ×1

sql-server ×1

token ×1

v8 ×1