我正在创建一个快速应用程序,每当我在URL中添加“:ID”参数时,我的CSS代码就会停止工作。我知道这是一个文件路径问题,因为引导程序仍然可以正常使用,但是在具有ID参数的页面上显示如下:“拒绝应用'https://XXXXXX.c9users.io/unapproved/main.css'中的样式,因为其MIME类型('text / html')是不是受支持的样式表MIME类型,并且启用了严格的MIME检查。”
main.css在我的/ public文件夹中,但看起来像是在标题为“未经批准”的文件夹中。
我尝试更改路由顺序,尝试更改app.use(express.static(__ dirname))代码。
这是我的app.get:
ChilkatLog:
FromOpenSshPrivateKey(3ms):
DllDate: Mar 19 2019
ChilkatVersion: 9.5.0.77
UnlockPrefix: Anything for 30-day trial.
Architecture: Little Endian; 64-bit
Language: Cocoa Objective-C
VerboseLogging: 1
fromOpenSshPrivateKey(2ms):
loadPem2(1ms):
loadPem(1ms):
itemType: OPENSSH PRIVATE KEY
addPemItem(1ms):
itemType: OPENSSH PRIVATE KEY
This is an openssh-key-v1 key...
loadOpenSshKeyV1(1ms):
cipherName: none
kdfName: none
numKeys: 1
szPubKey: 279
szEncryptedPrivKeys: 984
Unknown kdf name.
--loadOpenSshKeyV1
Failed to load private key...
--addPemItem
Failed to add PEM item.
No more -----BEGIN's found.
--loadPem
Failed to load PEM
--loadPem2
Did you forget to set the Password property on this SshKey object prior to loading this private key?
--fromOpenSshPrivateKey
Failed.
--FromOpenSshPrivateKey
这是我的html:
app.get("/unapproved/:id/", function(req, res){
var invoiceID = mongoose.mongo.ObjectId(req.params.id);
InvoiceObj.findById(invoiceID,function(err,foundInvoice){
if(err){
console.log(err);
}else{
res.render("invoiceScreen",{invoice:foundInvoice});
}
});
这是我的标题:
<% include partials/header %>
<h1><image src="<%= invoice.imageUrl %>"</h1>
<% include partials/footer %>
答案 0 :(得分:0)
在这种情况下,最好为静态文件使用virtual path
,因为相对路径不能很好地工作。喜欢:
假设文件夹结构:
app.js
public
| +-- main.css
app.use('/static', express.static(__dirname + "/public"))
在您html
中,使路径绝对
<link rel="stylesheet" href="/static/main.css">
答案 1 :(得分:0)
我认为更改CSS路径绝对路径将解决您的问题
<link rel="stylesheet" href="/main.css">
答案 2 :(得分:0)
例如,不要在assest(images / css / js)之前使用./或../。 ./css/style.css或css / bootstrap.css ../ images / example.png
例如,您可以使用/ /css/style.css 或 /css/bootraps.css /images/example.png
/会告诉您的应用从根目录查找。