我正在尝试使用我的GET请求发送我的会话cookie iron-ajax
.现在,请求中根本没有cookie.有什么建议?
<iron-ajax
auto
url="{{apiHost}}/users/me"
withCredentials="true"
handle-as="json"
versbose="true"
requestHeaders='{"Cookie":"curves"}'
></iron-ajax>
Run Code Online (Sandbox Code Playgroud) 使用入门套件2中的模板,是否可以将应用程序抽屉放在app-header
?现在,应用程序抽屉从视口顶部开始,并在旁边列化app-header
.
我希望我的应用程序像谷歌保持和谷歌云控制台,其中应用程序标题跨越视口的整个宽度,应用程序抽屉从下面开始.
在阅读了元素目录之后app-layout
,我没有看到设置它的官方api /属性.我尝试了一些但没有成功的事情:
<app-drawer-layout fullbleed>
<!-- Drawer content -->
<app-header condenses reveals effects="waterfall">
<app-toolbar>
<paper-icon-button icon="menu" drawer-toggle></paper-icon-button>
<div main-title>My App</div>
</app-toolbar>
</app-header>
<app-drawer>
<app-toolbar>Menu</app-toolbar>
<iron-selector selected="[[page]]" attr-for-selected="name" class="drawer-list" role="navigation">
<a name="view1" href="/view1">View One</a>
<a name="view2" href="/view2">View Two</a>
<a name="view3" href="/view3">View Three</a>
</iron-selector>
</app-drawer>
Run Code Online (Sandbox Code Playgroud)
我有一个dom-repeat模板,我希望能够实时对列表进行排序.所以,我采用的方式是下面的方式.但是,当用户从中选择新选择时,我需要一种方法来刷新dom-repeat paper-menu
.
通常,对结果集数组的修改会执行此操作.但在这种情况下,对列表进行排序的更改不需要添加或删除该数组中的任何内容(因此没有数组突变).
我怎么能<template is="dom-repeat" items="[[pic.results173]]" as="url" sort="_sortList">
刷新?
<paper-menu-button>
<paper-button class="dropdown-trigger" raised>
<iron-icon icon="visibility"></iron-icon>
<span>View By</span>
</paper-button>
<paper-menu id="viewMode" class="dropdown-content" selected="0">
<paper-item>Most Recent</paper-item>
<paper-item>Least Recent</paper-item>
<paper-item>Highest Price</paper-item>
Run Code Online (Sandbox Code Playgroud)
<template is="dom-repeat" items="[[pic.results173]]"
as="url" sort="_sortList">
Run Code Online (Sandbox Code Playgroud)
_sortList: function(first, second) {
var el = this.$.viewMode;
var listMode;
switch(el.selected) {
case 0:
listMode = this._mostRecent(first , second);
break;
}
return listMode;
},
Run Code Online (Sandbox Code Playgroud) foo = document.getElementById("outer");
function cycleIt() {
if (client.browser.Firefox) {
foo.addEventListener("animationend", updateClassName, true);
} else {
foo.addEventListener("webkitAnimationEnd", updateClassName, true);
}
}
function updateClassName() {
var z = foo.getAttribute("class");
if ( z == "a" ) {
foo.className = "b";
} else if ( z == "b" ) {
foo.className = "c"
} else if ( z == "c" ) {
foo.className = "d"
} else {
foo.className = "a"
}
return foo;
}
Run Code Online (Sandbox Code Playgroud)
有人在Javascript聊天频道上告诉我,我应该为if if语句创建一个哈希表.我该怎么办呢?
var xml = null;
xml = new XMLHttpRequest();
xml.open("get", who, false);
xml.send(null);
if ((xml.status >= 200 && xml.status <= 300) || xml.status == 304) {
var hi = xml.responseText;
} else {
alert("No Internet Connection! You will have to enter information by hand");
};
Run Code Online (Sandbox Code Playgroud)
我想设置这个警报,如果没有互联网连接,它会这样说.但是,浏览器停止/挂起xml.send(null)与NS_ERROR_FAILURE:失败.如何为连接正确设置测试?
在angular.js中,我有一个按钮,提供下拉菜单.我遇到的问题是,始终如一,我必须单击按钮两次以显示下拉菜单.我第一次点击按钮,我看到它亮起来...所以点击注册.但是,我必须再次点击它以显示下拉菜单.是什么造成的?
指示:
angular.module('main.vips')
.directive('actionButton', ['ActionButtonService', function(ActionButtonService) {
openAddVipModal = function() {
return $modal.open({
templateUrl: 'vips/addvip.html',
controller: 'AddVipCtrl',
size: 'lg',
windowClass: 'modal-fullscreen vip-modal'
});
}
return {
templateUrl: 'vips/directives/actionButton.html',
restrict: "AE",
replace: true,
transclude: false,
scope: {
'label': "@?",
'icon': "@?",
'type': "@?",
'actions': "=?"
},
link: function(scope, element, attrs) {
scope.actions = ActionButtonService[attrs.type];
}
}
}]);
Run Code Online (Sandbox Code Playgroud)
服务:
angular.module('main.vips')
.factory('ActionButtonService', function() {
var actions = {};
actions.loadbalancer = [
{
label: "Create New VIP",
fn: function() {
return openAddVipModal();
},
icon: …
Run Code Online (Sandbox Code Playgroud) 我正在使用Python服务器与Python的Requests模块进行http调用.请求调用在常规python shell中没有问题.但是在Flask中,它出现了"引发ConnectionError(e)"的错误.这真的很痛,因为我需要使用python在后端进行url调用,因为我不能使用javascript因为跨域限制.
flask python # cat myapp.py
import json
import requests
from flask import Flask
app = Flask(__name__)
@app.route('/', defaults={'path': ''}, methods=('GET', 'POST'))
@app.route('/<path:path>', methods=('GET', 'POST'))
def catch_all(path):
link = "http://10.44.11.33/api/v1/counts/latest/15"
r = requests.get(link)
return "Hello World"
if __name__ == '__main__':
app.run(debug=True, host="0.0.0.0")
Run Code Online (Sandbox Code Playgroud)
错误输出:
File "/usr/lib64/python2.7/site-packages/flask/app.py", line 1836, in __call__
return self.wsgi_app(environ, start_response)
File "/usr/lib64/python2.7/site-packages/flask/app.py", line 1820, in wsgi_app
response = self.make_response(self.handle_exception(e))
File "/usr/lib64/python2.7/site-packages/flask/app.py", line 1403, in handle_exception
reraise(exc_type, exc_value, tb)
File "/usr/lib64/python2.7/site-packages/flask/app.py", line 1817, in wsgi_app
response = self.full_dispatch_request() …
Run Code Online (Sandbox Code Playgroud) def raw_list(function):
@wraps(function)
def wrapper(args, producer_data):
print producer_data[2]
tenant, token, url = producer_data
body, status_code = do_request(url, token)
return function(args, producer_data)
return wrapper
@raw_list
def member_list(args, producer_data):
# in argparse, consumer or producer data can be used because
# consumer is aliased to producer.
uuid = args['uuid']
producer_data[2] = producer_data[2] + "/" + uuid + "/members"
Run Code Online (Sandbox Code Playgroud)
我有几个函数可以获取URL,对其进行修改,并使用URL进行API调用.出于这个原因,我为API调用部分创建了一个包装函数.因此,每个函数只需要改变URL并用包装函数进行修饰.
但我遇到的问题是,变异的URL代码producer_data[2] = producer_data[2] + "/" + uuid + "/members"
似乎在函数装饰器代码运行之后运行,而不是之前.因此,使用原始URL而不是变异URL.
如何修复此逻辑流并将其调用到使用变异URL进行API调用的位置?
使用Restangular,get方法/ promise将解析,但传递给.then()的结果为空...使用console.log(data); 显示未定义.我检查了chrome debug中的网络选项卡,xhr请求很好,200次成功...正文中有一个完整的json响应.
使用addResponseInterceptor
,我发现data参数是未定义的,但response参数显示包含带有负载/ body的data属性的对象.
所以,我还在挠头......为什么数据参数未定义,而响应对象在response.data中正确包含json有效负载/响应?
我需要解决这个问题,以便在解析时将结果传递给.then().
createNode: function(node) {
var account = "9936";
var eventId = "0fd6afd9-4aa0-a5c9-ff0b3e60cdcf";
Restangular.addResponseInterceptor(function(data, operation, what, url, response, deferred) {
console.log("````````````````");
console.log(data);
console.log(operation);
console.log(what);
console.log(url);
console.log(response);
console.log(deferred);
console.log("````````````````");
});
Run Code Online (Sandbox Code Playgroud)
node.js:12
undefined node.js:13
get node.js:14
event node.js:15
/1.0/loadbalancers/account/9936/event/0fd6afd9-4aa0-a5c9-ff0b3e60cdcf node.js:16
^Object {data: Object, status: 200, headers: function, config: Object}
config: Object
data: Object
Automation: Object
Classification: Array[2]
ExecutionTimestamp: "2014-08-13T16:08:37.4676Z"
ID: "0fd6afd9-a5c9-ff0b3e60cdcf"
Incident: Object
LastStatus: "ENQUEUED"
Metadata: Object
Name: "Node Create"
RecordLogs: false
Source: "Device …
Run Code Online (Sandbox Code Playgroud) 这很奇怪......我第一次输入输入框时,会弹出typeahead模板,但会显示为空.但如果退格并再次执行...那么模板就会填充.就像有某种竞争条件一样typeahead-template-url
.Ater认为,问题会消失,直到下一页刷新.有任何想法吗?
angular.module("main.loadbalancer").controller("BindNodeCtrl", function($scope, $modalInstance, VipService, NodeService, Account, StatusTrackerService) {
(function(promise) {
return $scope.getNodeLabel = function(val) {
return promise.then(function(nodes) {
var dropDownItems;
dropDownItems = [];
_.forEach(nodes, function(node) {
if (_.str.include(node.id.toLowerCase(), val.toLowerCase())) {
return dropDownItems.push({
label: node.label,
address: node.address,
port: node.port_number,
value: node.id,
});
}
});
return _.sortBy(dropDownItems, 'label');
});
};
})(NodeService.getNodes());
Run Code Online (Sandbox Code Playgroud)
<input type="text" id="label" name="label" ng-model="$parent.node.id" typeahead-min-length="1"
placeholder="Node Name / Label"
typeahead-editable="false"
typeahead="dropDownItem as dropDownItem.label for dropDownItem in getNodeLabel($viewValue)"
typeahead-template-url="typeahead/bind-node.html" style="width:100%;"
typeahead-loading="loadingNodeLabels" class="form-control" required>
Run Code Online (Sandbox Code Playgroud)
<script type="text/ng-template" id="typeahead/bind-node.html">
<a><i>{{match.model.label}} — …
Run Code Online (Sandbox Code Playgroud) Angular UI路由器问题
当$state.go("main.loadbalancer.readonly");
在resolve
块中激活时,main.loadbalancer.vips
状态控制器VipListCtrl
(仅控制器)仍然在解析后加载.
由于状态main.loadbalancer.readonly
被激活,如何让控制器VipListCtrl
取消而不加载?
我尝试使用一个承诺并且永远不会解除承诺,但是UI路由器似乎永远都会坚持这个决心.
angular.module("main.loadbalancer", ["ui.bootstrap", "ui.router"]).config(function($stateProvider) {
return $stateProvider.state("main.loadbalancer", {
url: "device/:id",
views: {
"content@": {
templateUrl: "loadbalancer/loadbalancer.html",
controller: "LoadBalancerCtrl"
}
}
}).state("main.loadbalancer.vips", {
resolve: {
isDeviceReadOnly: function($state) {
if (!$state.current.data['deviceId']) {
$state.go("main.loadbalancer.readonly"); //THIS IS RAN...NEED CONTROLLER
//VipListCtrl TO NOT RUN AFTERWARDS
}
}
},
url: "/vips",
templateUrl: "loadbalancer/vip-table.html",
controller: "VipListCtrl"
}).state("main.loadbalancer.nodes", {
url: "/nodes",
templateUrl: "loadbalancer/node-table.html",
controller: "NodeListCtrl"
}).state("main.loadbalancer.admin", {
url: "/admin",
templateUrl: "loadbalancer/admin.html",
controller: …
Run Code Online (Sandbox Code Playgroud) 我是新来的咖喱功能,有人建议我使用它们.我想知道这个:
var updateNodeStorage;
updateNodeStorage = function(devicesToCheck) {
var nodesToCallOut;
nodesToCallOut = devicesToCheck.filter(function(device) {
var nodeExistInStorage;
return nodeExistInStorage = nodeStorage.devices.every(function(nodeInStorage) {
return device.id !== nodeInStorage.id;
});
});
nodesToCallOut.forEach(function(node) {
getNodeProtocol(node.id);
});
};
Run Code Online (Sandbox Code Playgroud)
为此代码使用咖喱函数是否有益?如果是这样,我将在何处以及如何使用它?
angularjs ×4
javascript ×3
polymer ×3
polymer-1.0 ×3
python ×2
ajax ×1
currying ×1
decorator ×1
flask ×1
hashtable ×1
http ×1
python-2.7 ×1
restangular ×1