那么我使用以下代码来呈现从webservice作为base64字符串返回的PDF.
<html>
<object data="data:application/pdf;base64,{!pdfStampingResponse.pdfBase64}" type="application/pdf" width="100%" class="internal">
<param name="view" value="fitH" />
</object>
</html>Run Code Online (Sandbox Code Playgroud)
这很好但我想在用户尝试保存文件时设置下载文件名.不知何故,我无法找到一个有效的解决方案.知道怎么做吗?
我需要创建一个Zip文件,其中包含位于我的s3存储桶中的一系列文件(视频和图像).
目前使用我的代码的问题是我很快就达到了Lambda的内存限制.
async.eachLimit(files, 10, function(file, next) {
var params = {
Bucket: bucket, // bucket name
Key: file.key
};
s3.getObject(params, function(err, data) {
if (err) {
console.log('file', file.key);
console.log('get image files err',err, err.stack); // an error occurred
} else {
console.log('file', file.key);
zip.file(file.key, data.Body);
next();
}
});
},
function(err) {
if (err) {
console.log('err', err);
} else {
console.log('zip', zip);
content = zip.generateNodeStream({
type: 'nodebuffer',
streamFiles:true
});
var params = {
Bucket: bucket, // name of dest bucket
Key: 'zipped/images.zip', …Run Code Online (Sandbox Code Playgroud) 我遇到了麻烦,我刚刚npm卸载react-bootstrap,然后npm install react-bootstrap,webpack再也无法加载这个模块了.
我像这样启动webpack:
/var/www/cloud/node_modules/.bin/webpack --config webpack.config.js --watch --display-error-details
这里是错误,它只是无法在react-bootstrap中找到package.json:
ERROR in ./core/static/core/js/modules/dashboard/admin/Customer.js
Module not found: Error: Cannot resolve module 'react-bootstrap' in /var/www/cloud/core/static/core/js/modules/dashboard/admin
resolve module react-bootstrap in /var/www/cloud/core/static/core/js/modules/dashboard/admin
looking for modules in /var/www/cloud/node_modules
resolve 'file' react-bootstrap in /var/www/cloud/node_modules
resolve file
/var/www/cloud/node_modules/react-bootstrap is not a file
/var/www/cloud/node_modules/react-bootstrap.js doesn't exist
/var/www/cloud/node_modules/react-bootstrap.jsx doesn't exist
resolve 'file' or 'directory' /var/www/cloud/node_modules/react-bootstrap
resolve file
/var/www/cloud/node_modules/react-bootstrap is not a file
/var/www/cloud/node_modules/react-bootstrap.js doesn't exist
/var/www/cloud/node_modules/react-bootstrap.jsx doesn't exist
resolve directory
use lib/index.js from package.json
resolve 'file' or 'directory' lib/index.js …Run Code Online (Sandbox Code Playgroud) 我正在使用express-cors npm 包,但任何方式都可以:
我在公共路线上尝试过这个:
// @ /routes/index.js
var cors = require('express-cors');
var express = require('express');
var router = express.Router();
// Set cross-origin rules
router.use(cors({
allowedOrigins: [
'*'
]
}));
// GET home page
router.get('/', function(req, res, next) {
res.render('index', { title: 'tol-node-public' });
});
module.exports = router;
Run Code Online (Sandbox Code Playgroud)
我还尝试了私人路线以允许从我的网站访问:
// Set cross-origin rules
router.use(cors({
allowedOrigins: [
'https://*.mysite.*'
]
}));
Run Code Online (Sandbox Code Playgroud)
但是在我的 Ajax 调用中:
$.ajax({
url: 'https://api.mysite.com/',
dataType: 'html',
type: 'GET',
success: function (res) {
console.log( "NODE SERVER STATUS: " + JSON.stringify(res) ); …Run Code Online (Sandbox Code Playgroud) 除了调用它们的方式之外,javascript 对象中这两个函数(一个是访问器属性 getter)之间的具体区别是什么?
var o = {
foo: function() { return "bar"; },
get foo2() { return "bar2"; }
}
Run Code Online (Sandbox Code Playgroud) 我使用 DOM 动态地将脚本添加到页面。
如果我添加脚本文本(例如script.text = "...";),它会立即运行。
但是,如果我添加外部脚本(例如script.src = "...";),它将在我的脚本完成后运行。
所以在下面的例子中我会得到
“0 1 2”
和
“3 3 3”
分别。
( 1.js 包含相同的字符串 - "document.body.innerHTML += i")
<body>
<script>
for (i = 0; i < 3; i++) {
var script = document.createElement('script');
script.src = "1.js";
// script.text = "document.body.innerHTML += i";
document.body.append(script);
};
</script>
</body>
Run Code Online (Sandbox Code Playgroud)
我不明白为什么它会这样工作,以及如何在添加后立即运行 1.js?
当在React中使用this.setState()时状态实际发生变化时,我感到很困惑.这是我的JSX:
var Hello = React.createClass({
getInitialState: function () {
return {
iterator: 0
}
},
handleClick: function () {
console.log(this.state.iterator);
this.setState({
iterator: this.state.iterator + 1
})
console.log(this.state.iterator)
},
render: function () {
return <button onClick={this.handleClick}>{this.state.iterator}</button>;
}
});
ReactDOM.render(
<Hello name="World"/>,
document.getElementById('container')
);
Run Code Online (Sandbox Code Playgroud)
如您所见,我在调用this.setState()之前和之后记录迭代器的状态.但无论如何,它都记录了相同的数字.在我第一次单击按钮之后,我希望分别记录0和1,但它们都记录0和0.而在第二次点击时,它们记录1和1.那么状态实际上是什么时候发生变化以及究竟发生了什么这里?