我有一个简单的html页面,角度js如下:
//Application name
var app = angular.module("myTmoApppdl", []);
app.controller("myCtrl", function ($scope) {
//Sample login function
$scope.signin = function () {
var formData =
{
email: $scope.email,
password: $scope.password
};
console.log("Form data is:" + JSON.stringify(formData));
};
});
Run Code Online (Sandbox Code Playgroud)
HTML文件:
<html>
<head>
<link href="bootstrap.min.css" rel="stylesheet" type="text/css"/>
</head>
<body ng-app="myTmoApppdl" ng-controller="myCtrl">
<div class="container">
<div class="form-group">
<form class="form" role="form" method="post" ng-submit="signin()">
<div class="form-group col-md-6">
<label class="">Email address</label>
<input type="email" class="form-control" ng-model="email" id="exampleInputEmail2" placeholder="Email address" required>
</div>
<div class="form-group col-md-6">
<label class="">Password</label>
<input type="password" class="form-control" id="exampleInputPassword2" …Run Code Online (Sandbox Code Playgroud) 无法将响应数据发送回客户端.它的投掷错误说response.write()不是一个功能:
var express = require('express');
var app = express();
var request = require('request');
var port = process.env.PORT || 5000;
app.set('port', (port));
app.use(express.static(__dirname + '/'));
app.get('/', function(request, response) {
response.render('/');
});
app.listen(app.get('port'), function() {
console.log('Node app is running on port', app.get('port'));
});
app.post('/login', verifyLogin);
function verifyLogin(req, res, next) {
var loginParams = {
'username': req.body.username,
'password': req.body.password
};
request({
url: 'http://localhost:8084/xxx/auth', //URL to hit
qs: {username: req.body.username, password: req.body.password},
method: 'POST',
json: {
"username": req.body.username, "password": req.body.password
}
}, …Run Code Online (Sandbox Code Playgroud) 我有这样的URI:
java.net.URI location = UriBuilder.fromPath("../#/Login").queryParam("token", token).build();
我发送它作为回应: return Response.seeOther(location).build()
但是,在上面的URI中,#正在编码%23/.如何在不对哈希进行编码的情况下创建URI #.根据官方文件,fragment()必须使用一种方法来保持未编码.
URI的大多数组件都允许使用URI模板,但它们的值仅限于特定组件.例如
.UriBuilder.fromPath( "{ARG1}")建立( "富#栏"); 将导致'#'的编码,使得结果URI为"foo%23bar".要创建URI"foo #bar",请使用UriBuilder.fromPath("{arg1}").fragment("{arg2}").build("foo","bar").
从文档中查看示例,我不确定如何在我的案例中应用它.
最终的URI应如下所示:
http://localhost:7070/RTH_Sample14/#Login?token=eyJhbGciOiJSUzI1NiJ9.eyJpc3MiOiJodHRwczpcL1wvcnRoLmNvbSIsInN1YiI6IlJUSCIsInJvbGUiOiJVU0VSIiwiZXhwIjoxNDU2Mzk4MTk1LCJlbWFpbCI6Imtpcml0aS5rOTk5QGdtYWlsLmNvbSJ9.H3d-8sy1N-VwP5VvFl1q3nhltA-htPI4ilKXuuLhprxMfIx2AmZZqfVRUPR_tTovDEbD8Gd1alIXQBA-qxPBcxR9VHLsGmTIWUAbxbyrtHMzlU51nzuhb7-jXQUVIcL3OLu9Gcssr2oRq9jTHWV2YO7eRfPmHHmxzdERtgtp348
在使用Nimbus JOSE + JWT进行的每个资源请求中,我都有从服务器到客户端的来回令牌
用于创建JWT令牌的代码:
public class TokenProvider {
String token = "";
public String getToken(String email) {
try {
KeyPairGenerator keyGenerator = KeyPairGenerator.getInstance("RSA");
keyGenerator.initialize(1024);
KeyPair kp = keyGenerator.genKeyPair();
RSAPublicKey publicKey = (RSAPublicKey) kp.getPublic();
RSAPrivateKey privateKey = (RSAPrivateKey) kp.getPrivate();
System.out.println("publicKey: " + publicKey);
System.out.println("privateKey: " + privateKey.toString());
JWSSigner signer = new RSASSASigner(privateKey);
JWTClaimsSet claimsSet = new JWTClaimsSet();
claimsSet.setSubject("RTH");
claimsSet.setCustomClaim("email", email);
claimsSet.setCustomClaim("role", "USER");
claimsSet.setIssuer("https://rth.com");
claimsSet.setExpirationTime(new Date(new Date().getTime() + 60 * 1000));
SignedJWT signedJWT = new SignedJWT(new JWSHeader(JWSAlgorithm.RS256), claimsSet);
signedJWT.sign(signer); …Run Code Online (Sandbox Code Playgroud) 我收到错误:
java.sql.SQLException: Invalid Oracle URL specified
at oracle.jdbc.driver.SQLStateMapping.newSQLException(SQLStateMapping.java:70)
at oracle.jdbc.driver.DatabaseError.newSQLException(DatabaseError.java:133)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:199)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:263)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:271)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:445)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:428)
at java.sql.DriverManager.getConnection(DriverManager.java:579)
at java.sql.DriverManager.getConnection(DriverManager.java:190)
at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnectionFromDriverManager(DriverManagerDataSource.java:153)
at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnectionFromDriver(DriverManagerDataSource.java:144)
at org.springframework.jdbc.datasource.AbstractDriverBasedDataSource.getConnectionFromDriver(AbstractDriverBasedDataSource.java:155)
at org.springframework.jdbc.datasource.AbstractDriverBasedDataSource.getConnection(AbstractDriverBasedDataSource.java:120)
at com.Templates.DBOperation.DBOperationBean.fetchName(DBOperationBean.java:34)
at com.Templates.DBOperation.DBOperationClient.main(DBOperationClient.java:29)
Run Code Online (Sandbox Code Playgroud)
这是我的代码:
ApplicationContext.xml文件:
<beans>
<bean id = "drds" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name = "driverClassName" value = "oracle.jdbc.driver.OracleDriver"/>
<property name = "url" value = "jdbc:oracle:thin@localhost:1521:orcl"/>
<property name = "username" value = "templates"/>
<property name = "password" value = "templates"/>
</bean>
<bean id = "dob" class="com.Templates.DBOperation.DBOperationBean">
<property name …Run Code Online (Sandbox Code Playgroud) java ×3
javascript ×2
node.js ×2
angularjs ×1
jax-rs ×1
jwt ×1
oauth ×1
rest ×1
spring ×1
uribuilder ×1