有没有办法只在 Cypress 中为一个测试更改 userAgent? 我知道如何在 cypress.json 文件中执行此操作,但这只会为所有测试全局设置 userAgent,这不是我想要实现的。 我已经试过了:
Cypress.config('userAgent', 'Mozilla/5.0 (iPhone; CPU iPhone OS 10_3 like Mac OS X) AppleWebKit/602.1.50 (KHTML, like Gecko) CriOS/56.0.2924.75 Mobile/14E5239e Safari/602.1')
但是it doesn't seem to update userAgent
还有其他方法吗?
答案 0 :(得分:1)
也许您可以使用 <!DOCTYPE html>
<html>
<head>
<script type="text/javascript">
window.languagePluginUrl = 'https://cdn.jsdelivr.net/pyodide/v0.17.0a2/full/';
</script>
<script src="https://cdn.jsdelivr.net/pyodide/v0.17.0a2/full/pyodide.js"></script>
</head>
<body>
<p>You can execute any Python code. Just enter something in the box below and click the button.</p>
<textarea id='code' style='width: 50%;' rows='10'>print('hello')</textarea>
<button onclick='evaluatePython()'>Run</button>
<br>
<br>
<div>
Output:
</div>
<textarea id='output' style='width: 50%;' rows='3' disabled></textarea>
<script>
const output = document.getElementById("output");
const code = document.getElementById("code");
// show output
function addToOutput(s) {
output.value = s;
}
function evaluatePython() {
let output = pyodide.runPythonAsync(code.value)
.then(output => addToOutput(output))
.catch((err) => { addToOutput(err)});
}
languagePluginLoader.then(()=>{
// override default print behavior
pyodide.globals.print = s => s
})
</script>
</body>
</html>
并更改请求中的用户代理标头。参考:https://docs.cypress.io/api/commands/intercept#Modifying-an-outgoing-request
类似的东西
cy.intercept