js console: add cors domain optional argument to startRpc
This commit is contained in:
		
							parent
							
								
									a3fb41981e
								
							
						
					
					
						commit
						22450c069b
					
				| @ -209,10 +209,19 @@ func (js *jsre) startRPC(call otto.FunctionCall) otto.Value { | |||||||
| 		return otto.FalseValue() | 		return otto.FalseValue() | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
|  | 	var corsDomain string | ||||||
|  | 	if len(call.ArgumentList) > 2 { | ||||||
|  | 		corsDomain, err = call.Argument(2).ToString() | ||||||
|  | 		if err != nil { | ||||||
|  | 			fmt.Println(err) | ||||||
|  | 			return otto.FalseValue() | ||||||
|  | 		} | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
| 	config := rpc.RpcConfig{ | 	config := rpc.RpcConfig{ | ||||||
| 		ListenAddress: addr, | 		ListenAddress: addr, | ||||||
| 		ListenPort:    uint(port), | 		ListenPort:    uint(port), | ||||||
| 		// CorsDomain:    ctx.GlobalString(RPCCORSDomainFlag.Name),
 | 		CorsDomain:    corsDomain, | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	xeth := xeth.New(js.ethereum, nil) | 	xeth := xeth.New(js.ethereum, nil) | ||||||
|  | |||||||
| @ -3,16 +3,16 @@ package main | |||||||
| import ( | import ( | ||||||
| 	"fmt" | 	"fmt" | ||||||
| 	"io/ioutil" | 	"io/ioutil" | ||||||
| 	"path/filepath" |  | ||||||
| 	"os" | 	"os" | ||||||
| 	"path" | 	"path" | ||||||
|  | 	"path/filepath" | ||||||
| 	"testing" | 	"testing" | ||||||
| 
 | 
 | ||||||
| 	"github.com/ethereum/go-ethereum/accounts" | 	"github.com/ethereum/go-ethereum/accounts" | ||||||
| 	"github.com/ethereum/go-ethereum/crypto" | 	"github.com/ethereum/go-ethereum/crypto" | ||||||
| 	"github.com/ethereum/go-ethereum/eth" | 	"github.com/ethereum/go-ethereum/eth" | ||||||
| 	"runtime" |  | ||||||
| 	"regexp" | 	"regexp" | ||||||
|  | 	"runtime" | ||||||
| 	"strconv" | 	"strconv" | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| @ -70,8 +70,8 @@ func TestAccounts(t *testing.T) { | |||||||
| 		t.Errorf("address not hex: %q", addr) | 		t.Errorf("address not hex: %q", addr) | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	checkEvalJSON(t, repl, `eth.accounts`, `["` + addr + `"]`) | 	checkEvalJSON(t, repl, `eth.accounts`, `["`+addr+`"]`) | ||||||
| 	checkEvalJSON(t, repl, `eth.coinbase`, `"` + addr + `"`) | 	checkEvalJSON(t, repl, `eth.coinbase`, `"`+addr+`"`) | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| func TestBlockChain(t *testing.T) { | func TestBlockChain(t *testing.T) { | ||||||
| @ -97,13 +97,13 @@ func TestBlockChain(t *testing.T) { | |||||||
| 	tmpfile := filepath.Join(tmp, "export.chain") | 	tmpfile := filepath.Join(tmp, "export.chain") | ||||||
| 	tmpfileq := strconv.Quote(tmpfile) | 	tmpfileq := strconv.Quote(tmpfile) | ||||||
| 
 | 
 | ||||||
| 	checkEvalJSON(t, repl, `admin.export(` + tmpfileq + `)`, `true`) | 	checkEvalJSON(t, repl, `admin.export(`+tmpfileq+`)`, `true`) | ||||||
| 	if _, err := os.Stat(tmpfile); err != nil { | 	if _, err := os.Stat(tmpfile); err != nil { | ||||||
| 		t.Fatal(err) | 		t.Fatal(err) | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	// check import, verify that dumpBlock gives the same result.
 | 	// check import, verify that dumpBlock gives the same result.
 | ||||||
| 	checkEvalJSON(t, repl, `admin.import(` + tmpfileq + `)`, `true`) | 	checkEvalJSON(t, repl, `admin.import(`+tmpfileq+`)`, `true`) | ||||||
| 	checkEvalJSON(t, repl, `admin.debug.dumpBlock()`, beforeExport) | 	checkEvalJSON(t, repl, `admin.debug.dumpBlock()`, beforeExport) | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| @ -129,7 +129,7 @@ func TestRPC(t *testing.T) { | |||||||
| } | } | ||||||
| 
 | 
 | ||||||
| func checkEvalJSON(t *testing.T, re *jsre, expr, want string) error { | func checkEvalJSON(t *testing.T, re *jsre, expr, want string) error { | ||||||
| 	val, err := re.re.Run("JSON.stringify("+ expr + ")") | 	val, err := re.re.Run("JSON.stringify(" + expr + ")") | ||||||
| 	if err == nil && val.String() != want { | 	if err == nil && val.String() != want { | ||||||
| 		err = fmt.Errorf("Output mismatch for `%s`:\ngot:  %s\nwant: %s", expr, val.String(), want) | 		err = fmt.Errorf("Output mismatch for `%s`:\ngot:  %s\nwant: %s", expr, val.String(), want) | ||||||
| 	} | 	} | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user