我正在尝试查询DocumentDB集合并通过一个安静的ASP.Net Web API控制器返回结果.我有一个名字和出生日期的简单运动员课程,以及包含这种方法的AthletesController:
[HttpGet]
public List<Athlete> listAthletes()
{
string endpoint = ConfigurationManager.AppSettings["endpoint"];
string authkey = ConfigurationManager.AppSettings["authkey"];
string database = ConfigurationManager.AppSettings["database"];
string collection = "Athletes";
DocumentClient client = new DocumentClient(new Uri(endpoint), authkey);
List<Athlete> response = client.CreateDocumentQuery("dbs/" + database + "/colls/" + collection, "SELECT * FROM Athletes").AsEnumerable().Cast<Athlete>().ToList();
return response;
}
Run Code Online (Sandbox Code Playgroud)
一般的想法是我将IQueryable转换为IEnumerable,将其转换为Type Athlete,然后使用ToList方法为Web API消费做好准备.
但是,这是我在运行时得到的错误:
无法将"Microsoft.Azure.Documents.QueryResult"类型的对象强制转换为"TestApp.Models.Athlete"类型
请注意,新的候选版本 (RC) 路由器在 @Routes 装饰器中不包含“name”参数。然而,在使用 RC 路由器描述路由时,angular.io 上的文档明确提到了“名称”。这只是文档的复制/粘贴问题还是打算将“名称”参数添加回混合中?
如果“name”参数永远消失了,原因是什么?是否有任何文档可以阐明已弃用的路由器和 RC 路由器之间的差异?
(RC) 路由器示例:
@Routes([
{path: '/crisis-center', component: CrisisListComponent},
{path: '/heroes', component: HeroListComponent},
{path: '/hero/:id', component: HeroDetailComponent}
])
Run Code Online (Sandbox Code Playgroud)
(已弃用)路由器
@RouteConfig([
{path: '/crisis-center', name: 'CrisisCenter', component: CrisisListComponent},
{path: '/heroes', name: 'Heroes', component: HeroListComponent},
{path: '/hero/:id', name: 'HeroDetail', component: HeroDetailComponent}
])
Run Code Online (Sandbox Code Playgroud)
链接到提到 RC 路由器中仍然存在的“name”参数的新文档:
有没有人有使用 Angular 2 Web 应用程序从 IBM Bluemix 上的 Cloudant 数据库中 CRUD 数据的任何示例代码?我在开发 Ionic 2 应用程序方面取得了一些成功。但是,我不确定如何对标准的 Angular 2 Web App 执行相同的操作。我一直无法在网上找到任何好的教程。
我有一个包含 .jpg 文件的文件夹。我将这些与访问数据库中的产品相关联。产品来源之一提供了这些 .jpg 文件,但它们不允许您仅轻松下载当前使用的图片。因此,我找到了一个 PowerShell 脚本来删除我不需要的文件。
$exclusions = Get-Content C:\Users\office\Desktop\ExcludedPhotos.txt
dir -rec M:\PhotoDirectory\PhotoFolder | Where-Object {$exclusions -notcontains $_.name } | Remove-Item
Run Code Online (Sandbox Code Playgroud)
归功于@x0n Powershell 脚本,用于删除列表中未指定的文件
而且效果很好!但问题是它需要永远,我有超过 180,000 项要搜索和删除。所以我想做一个进度条,让我知道我已经完成了多少过程。
所以经过一番搜索,我找到了一篇名为“使用进度条”的文章
问题是我不知道如何将两者混合在一起,但是我在这里尝试过:
$exclusions = Get-Content C:\Users\office\Desktop\ExcludedPhotos.txt
1..100 | foreach-object {
Write-Progress -Activity "Deleting Files" -Status "$_ %" -Id 1 -PercentComplete $_ -CurrentOperation "Deleting File $_"
dir -rec M:\PhotoDirectory\PhotoFolder | Where-Object {$exclusions -notcontains $_.name } | Remove-Item
}
Run Code Online (Sandbox Code Playgroud)
然而,这似乎比原始脚本花费的时间更长,我不知道它是如何工作的,当我只需要删除 10-15 个文件时,我正在测试它。
很可能我缺少一些非常基本的东西,但我真的很感激能帮助理解这一点。
在这里,我添加了一个屏幕截图:
我有一个 javascript 函数,它在某些情况下返回一个布尔值,或者在其他一些情况下返回一个 Observable。我可以通过从布尔值中创建 Observable 以某种方式始终返回 Observable 吗?
问题
每当我们请求列表或查询时,我们都会看到从DocumentDB REST API返回此错误,但是当我们按名称/ id获取对象时,我们看到错误:
输入授权令牌无法提供请求.请检查是否按照协议构建了预期的有效负载,并检查所使用的密钥.
背景
我们已成功将node.js sdk与DocumentDB一起使用了一年多,但由于我们希望将后端的restful API代码从node.js App Service迁移到Azure Functions,我们看到10-30秒的滞后时间因为在一段时间内没有调用Function时,DocumentDB sdk加载缓慢.我们知道Function实例很热,并且这不是基于以前与Azure Functions团队通信的冷实例问题.
为了解决这个问题,我们想要测试DocumentDB REST API,它需要零个外部库在node.js函数中运行,并且应该尽快执行.
码
这是在本地node.js中运行的测试工具.一旦它运行,我们将把它移动到Azure功能.
var express = require('express');
var router = express.Router();
var crypto = require("crypto");
var request = require('request');
router.get('/', function (req, res, next) {
var key = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX';
var uri = "https://xxxxxx.documents.azure.com";
var verb = 'GET';
var type = 'dbs';
var link = 'dbs';
var url = `${uri}/${link}`;
var headers = getDefaultRequestHeaders();
// var body = `{"query":"SELECT * FROM c", "parameters": []}`; …Run Code Online (Sandbox Code Playgroud) 我所有的aws-cli命令都返回了
未知的输出类型:[无]
我检查了我的配置
$ aws配置
看起来很正常,但是我无法编辑“默认输出格式”
我用--debug运行了aws-cli命令,并看到了
MainThread - awscli.clidriver - DEBUG - Exception caught in main()
Traceback (most recent call last):
File "/Library/Python/2.7/site-packages/awscli/clidriver.py", line 208, in main
return command_table[parsed_args.command](remaining, parsed_args)
File "/Library/Python/2.7/site-packages/awscli/clidriver.py", line 345, in __call__
return command_table[parsed_args.operation](remaining, parsed_globals)
File "/Library/Python/2.7/site-packages/awscli/clidriver.py", line 517, in __call__
call_parameters, parsed_globals)
File "/Library/Python/2.7/site-packages/awscli/clidriver.py", line 638, in invoke
self._display_response(operation_name, response, parsed_globals)
File "/Library/Python/2.7/site-packages/awscli/clidriver.py", line 657, in _display_response
formatter = get_formatter(output, parsed_globals)
File "/Library/Python/2.7/site-packages/awscli/formatter.py", line 272, in get_formatter
raise ValueError("Unknown output type: %s" % format_type) …Run Code Online (Sandbox Code Playgroud) 我可以使用“ firebase deploy --only functions”部署到Firebase。不过,我想在我的本地计算机上运行ngrok,如建议在这里。我怎样才能做到这一点?
我知道ngrok会在Internet上公开带有端口的特定URL,并且它以端口作为参数在本地开始。我还需要在本地同一端口上运行NodeJS吗?使用内联编辑器的示例NodeJS脚本未声明NodeJS端口。相反,它具有以下内容:
exports.dialogflowFirebaseFulfillment = functions.https.onRequest( ...
Run Code Online (Sandbox Code Playgroud) 嘿,我遇到了一个问题,当我在本地运行服务器和应用程序时没有问题,但是当每个服务器和应用程序被推送到各自的服务器时,应用程序不会返回 cookie。有谁知道如何解决这个问题?
服务器:
app.use(function(req, res, next) {
res.header('Access-Control-Allow-Origin', '*');
res.header('Access-Control-Allow-Credentials', true);
res.header(
'Access-Control-Allow-Headers',
'Origin, X-Requested-With, Content-Type, Accept'
);
next();
});
Run Code Online (Sandbox Code Playgroud)
反应:
const request = axios.post(`${url}/api/login`, {
email,
password,
withCredentials: true,
headers: { crossDomain: true, 'Content-Type': 'application/json' },
})
.then(response => response.data);
Run Code Online (Sandbox Code Playgroud) 将装饰器(@Component + @View)转换为es5时,Babel会出错.我在gulp文件中遗漏了什么或者我怎么能让它工作?
ES2015文件(App.es6)
import {Component, View, bootstrap} from 'angular2/angular2';
@Component({
selector: 'my-app'
})
@View({
template: '<h1>Hello {{ name }}</h1>'
})
// Component controller
class MyAppComponent {
name: string;
constructor() {
this.name = 'Alice';
}
}
bootstrap(MyAppComponent);
Run Code Online (Sandbox Code Playgroud)
Gulp文件
var gulp = require('gulp');
var babel = require('gulp-babel');
gulp.task('default', function () {
return gulp.src('App.es6')
.pipe(babel())
.pipe(gulp.dest('dist'));
});
Run Code Online (Sandbox Code Playgroud) angular ×3
javascript ×2
aws-cli ×1
azure ×1
babeljs ×1
c# ×1
cloudant ×1
cors ×1
delete-file ×1
gulp ×1
ibm-cloud ×1
node.js ×1
observable ×1
powershell ×1
progress-bar ×1
reactjs ×1